# | 제출 시각 | 아이디 | 문제 | 언어 | 결과 | 실행 시간 | 메모리 |
---|---|---|---|---|---|---|---|
1076165 | 2024-08-26T11:32:10 Z | amin | 커다란 상품 (IOI17_prize) | C++14 | 2 ms | 6744 KB |
#include "prize.h" #include <bits/stdc++.h> using namespace std; vector<int>q; int a[1000000],b[1000000]; int find_best(int n) { int cur=0; q=ask(0); a[0]=q[0]; b[0]=q[1]; for(int i=0;i<n;i++) { a[i]=-1; b[i]=-1; } while(cur!=n) { // cout<<cur<<endl; int p=a[cur]; int pp=b[cur]; if(p==0&&pp==0) return cur; int l=0; int r=n-cur; while(l<r-1) { int mid=(l+r)/2; if(a[cur+mid]==-1) { q=ask(cur+mid); a[cur+mid]=q[0]; b[cur+mid]=q[1]; } if(p==a[cur+mid]&&pp==b[cur+mid]) { l=mid; }else r=mid; } cur=r+cur; } }
Compilation message
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 1 ms | 6744 KB | Output is correct |
2 | Correct | 2 ms | 3672 KB | Output is correct |
3 | Correct | 1 ms | 3672 KB | Output is correct |
4 | Correct | 1 ms | 6744 KB | Output is correct |
5 | Correct | 1 ms | 3672 KB | Output is correct |
6 | Incorrect | 1 ms | 3672 KB | Integer 200000 violates the range [0, 199999] |
7 | Halted | 0 ms | 0 KB | - |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 1 ms | 3504 KB | Output is correct |
2 | Correct | 1 ms | 3672 KB | Output is correct |
3 | Correct | 1 ms | 6744 KB | Output is correct |
4 | Correct | 1 ms | 6744 KB | Output is correct |
5 | Correct | 1 ms | 3672 KB | Output is correct |
6 | Incorrect | 1 ms | 6744 KB | Integer 200000 violates the range [0, 199999] |
7 | Halted | 0 ms | 0 KB | - |