Submission #1965676
Source Code Expand
#include <iostream> #include <vector> #include <set> using namespace std; int n; typedef pair<int,int> P; int a[10000]; int rec(int l,int r) { if(l <= -1 || n <= r) return 0; int cl = a[l]; int cr = a[r]; if(cl != cr) return 0; int cou = 2; --l; while(a[l] == cl && 0 <= l) { --l; cou++; } r++; while(a[r] == cr && r < n) { ++r; cou++; } if(cou < 4) return 0; return cou + rec(l,r); } int main() { cin >> n; for(int i = 0;i < n;i++) cin >> a[i]; int result = 0; for(int i = 1;i < n - 1;i++) { int before = a[i]; a[i] = a[i - 1]; result = max(result , rec(i - 1,i)); a[i] = a[i + 1]; result = max(result , rec(i - 1,i)); a[i] = before; } cout << n - result << endl; return 0; }
Submission Info
Submission Time | |
---|---|
Task | C - 連鎖 |
User | niuez |
Language | C++14 (GCC 5.4.1) |
Score | 100 |
Code Size | 797 Byte |
Status | AC |
Exec Time | 3 ms |
Memory | 256 KB |
Judge Result
Set Name | set01 | set02 | set03 | set04 | set05 | ||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Score / Max Score | 20 / 20 | 20 / 20 | 20 / 20 | 20 / 20 | 20 / 20 | ||||||||
Status |
|
|
AC |
|
|
Set Name | Test Cases |
---|---|
set01 | data1 |
set02 | data2 |
set03 | data3 |
set04 | data4 |
set05 | data5 |
Case Name | Status | Exec Time | Memory |
---|---|---|---|
data1 | AC | 1 ms | 256 KB |
data2 | AC | 1 ms | 256 KB |
data4 | AC | 2 ms | 256 KB |
data5 | AC | 3 ms | 256 KB |