Submission #4031439
Source Code Expand
#include <iostream> #include <cstdio> #include <cstring> #define N 4005 using namespace std; int n, vw[N], vb[N], d[N], u[2005][2005]; char t1[5]; void h(int p, int q) { while (p <= n * 2) { d[p] += q; p += (p & -p); } } int g(int p) { int r = 0; while (p > 0) { r += d[p]; p -= (p & -p); } return r; } int f(int p, int q) { int mn = 2e9, t; if (p == 0 && q == 0) return 0; if (u[p][q] != -1) return u[p][q]; if (p > 0) { t = vw[p] - g(vw[p]); h(vw[p], 1); mn = min(mn, f(p - 1, q) + (p + q - t)); h(vw[p], -1); } if (q > 0) { t = vb[q] - g(vb[q]); h(vb[q], 1); mn = min(mn, f(p, q - 1) + (p + q - t)); h(vb[q], -1); } return u[p][q] = mn; } int main() { int i, t2; cin >> n; for (i = 1; i <= n * 2; i++) { scanf ("%s %d", t1, &t2); if (t1[0] == 'W') vw[t2] = i; else vb[t2] = i; } memset(u, -1, sizeof(u)); cout << f(n, n); return 0; }
Submission Info
Submission Time | |
---|---|
Task | E - Sorted and Sorted |
User | sean617 |
Language | C++14 (GCC 5.4.1) |
Score | 600 |
Code Size | 949 Byte |
Status | AC |
Exec Time | 259 ms |
Memory | 16256 KB |
Compile Error
./Main.cpp: In function ‘int main()’: ./Main.cpp:48:27: warning: ignoring return value of ‘int scanf(const char*, ...)’, declared with attribute warn_unused_result [-Wunused-result] scanf ("%s %d", t1, &t2); ^
Judge Result
Set Name | Sample | All | ||||
---|---|---|---|---|---|---|
Score / Max Score | 0 / 0 | 600 / 600 | ||||
Status |
|
|
Set Name | Test Cases |
---|---|
Sample | 0_000.txt, 0_001.txt, 0_002.txt |
All | 0_000.txt, 0_001.txt, 0_002.txt, 1_003.txt, 1_004.txt, 1_005.txt, 1_006.txt, 1_007.txt, 1_008.txt, 1_009.txt, 1_010.txt, 1_011.txt, 1_012.txt, 1_013.txt, 1_014.txt, 1_015.txt, 1_016.txt, 1_017.txt, 1_018.txt, 1_019.txt, 1_020.txt, 1_021.txt, 1_022.txt, 1_023.txt, 1_024.txt, 1_025.txt, 1_026.txt, 1_027.txt, 1_028.txt, 1_029.txt, 1_030.txt, 1_031.txt, 1_032.txt, 1_033.txt, 1_034.txt, 1_035.txt |
Case Name | Status | Exec Time | Memory |
---|---|---|---|
0_000.txt | AC | 6 ms | 16000 KB |
0_001.txt | AC | 6 ms | 16000 KB |
0_002.txt | AC | 6 ms | 16000 KB |
1_003.txt | AC | 6 ms | 16000 KB |
1_004.txt | AC | 6 ms | 16000 KB |
1_005.txt | AC | 6 ms | 16000 KB |
1_006.txt | AC | 6 ms | 16000 KB |
1_007.txt | AC | 6 ms | 16000 KB |
1_008.txt | AC | 6 ms | 16000 KB |
1_009.txt | AC | 6 ms | 16000 KB |
1_010.txt | AC | 6 ms | 16000 KB |
1_011.txt | AC | 6 ms | 16000 KB |
1_012.txt | AC | 6 ms | 16000 KB |
1_013.txt | AC | 6 ms | 16000 KB |
1_014.txt | AC | 205 ms | 16256 KB |
1_015.txt | AC | 32 ms | 16000 KB |
1_016.txt | AC | 153 ms | 16128 KB |
1_017.txt | AC | 61 ms | 16128 KB |
1_018.txt | AC | 6 ms | 16000 KB |
1_019.txt | AC | 24 ms | 16000 KB |
1_020.txt | AC | 178 ms | 16128 KB |
1_021.txt | AC | 58 ms | 16128 KB |
1_022.txt | AC | 32 ms | 16000 KB |
1_023.txt | AC | 118 ms | 16128 KB |
1_024.txt | AC | 188 ms | 16256 KB |
1_025.txt | AC | 258 ms | 16256 KB |
1_026.txt | AC | 258 ms | 16256 KB |
1_027.txt | AC | 258 ms | 16256 KB |
1_028.txt | AC | 259 ms | 16256 KB |
1_029.txt | AC | 259 ms | 16256 KB |
1_030.txt | AC | 258 ms | 16256 KB |
1_031.txt | AC | 259 ms | 16256 KB |
1_032.txt | AC | 195 ms | 16256 KB |
1_033.txt | AC | 198 ms | 16256 KB |
1_034.txt | AC | 196 ms | 16256 KB |
1_035.txt | AC | 193 ms | 16256 KB |