# | 제출 시각 | 아이디 | 문제 | 언어 | 결과 | 실행 시간 | 메모리 |
---|---|---|---|---|---|---|---|
763237 | 2023-06-22T07:03:09 Z | vjudge1 | Xylophone (JOI18_xylophone) | C++14 | 1 ms | 208 KB |
#include<xylophone.h> #include<bits/stdc++.h> typedef long long ll; using namespace std; const int maxn=200005; int n; int a[maxn]; void solve(int n) { a[1]=0; a[2]=query(1,2); for (int i=3; i<=n; i++) { int x=query(1,i); int y=query(i-1,i); if (x!=y+abs(a[i-1]-a[i-2]) && a[i-2]>a[i-1]) { a[i]=a[i-1]+y; } else if (x==y+abs(a[i-1]-a[i-2]) && a[i-2]<a[i-1]) { a[i]=a[i-1]+y; } else { a[i]=a[i-1]-y; } } int minn=1e9; int mann=-1e9; for (int i=1; i<=n; i++) { minn=min(minn,a[i]); mann=max(mann,a[i]); } int pos_min; int pos_max; for (int i=1; i<=n; i++) { if (a[i]==minn) { pos_min=i; } if (a[i]==mann) { pos_max=i; } } if (pos_min>pos_max) { for (int i=1; i<=n; i++) { a[i]*=-1; } minn=1e9; mann=-1e9; for (int i=1; i<=n; i++) { minn=min(minn,a[i]); mann=max(mann,a[i]); } } for (int i=1; i<=n; i++) { answer(i,a[i]-minn+1); } }
Compilation message
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 0 ms | 208 KB | Output is correct |
2 | Correct | 0 ms | 208 KB | Output is correct |
3 | Incorrect | 1 ms | 208 KB | Wrong Answer [4] |
4 | Halted | 0 ms | 0 KB | - |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 0 ms | 208 KB | Output is correct |
2 | Correct | 0 ms | 208 KB | Output is correct |
3 | Incorrect | 1 ms | 208 KB | Wrong Answer [4] |
4 | Halted | 0 ms | 0 KB | - |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 0 ms | 208 KB | Output is correct |
2 | Correct | 0 ms | 208 KB | Output is correct |
3 | Incorrect | 1 ms | 208 KB | Wrong Answer [4] |
4 | Halted | 0 ms | 0 KB | - |