Submission #469672

#TimeUsernameProblemLanguageResultExecution timeMemory
469672ItamarExam (eJOI20_exam)C++14
12 / 100
115 ms3344 KiB
#include <vector> #include <algorithm> using namespace std; #include <iostream> vector<int> pre; int n; /*int lower_bo(int l, int r, int val) { int mid = (l + r) / 2; if (pre[mid] < val && (mid == n || pre[mid+1] >= val) ) { return mid+1; } if (pre[mid] < val) { return lower_bo(mid + 1, r, val); } if (pre[mid] > val) { return lower_bo(l, mid - 1, val); } }*/ int main() { int n; cin >> n; vector<int> r; vector<int> m; for (int i = 0; i < n; i++) { int x; cin >> x; m.push_back(x); } for (int i = 0; i < n; i++) { int x; cin >> x; //for (int j = i; j < n; j++) { //if (x == m[j]) { r.push_back(x); // break; //} //} } int cur = -1; bool is = false; int sum = 0; for (int i = 0; i < n; i++) { if (m[i] == r[0]) { is = true; } if (i == n - 1) { if (is) { sum += i - cur - 1; if (m[i] <= r[0]) { sum++; } } } else { if (m[i] > r[0]) { if (is) { sum += i - cur - 1; } cur = i; is = 0; } } } cout << sum; /*int siz = r.size(); vector<int>max(siz, -1); for (int i = 0; i < siz; i++) { for (int j = 0; j < siz; j++) { if (max[j] <= r[i] && max[j] != -1) { if (max[j + 1] > r[i] || max[j + 1] == -1) { max[j + 1] = r[i]; break; } } } if (max[0] > r[i] || max[0] == -1) { max[0] = r[i]; } } for (int i = siz-1; i >= 0; i--) { if (max[i] != -1) { cout << i+1; break; } } if (siz == 0) { cout << 0; }*/ }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...