QOJ.ac
QOJ
ID | Problem | Submitter | Result | Time | Memory | Language | File size | Submit time | Judge time |
---|---|---|---|---|---|---|---|---|---|
#720487 | #5549. Game Show | infCraft# | WA | 2ms | 7740kb | C++17 | 1.5kb | 2024-11-07 13:01:00 | 2024-11-07 13:01:01 |
Judging History
answer
#include <bits/stdc++.h>
using namespace std;
#define fori(x, y) for (int i=(x);i<=(y);++i)
#define forj(x, y) for (int j=(x);j<=(y);++j)
#define fork(x, y) for (int k=(x);k<=(y);++k)
const int N = 1e6 +10;
typedef long long ll;
typedef pair<int,int> pii;
typedef pair<ll,ll> pll;
#define debug(x) cerr << #x << " = " << x << endl
int a[N];
int b[N];
int prea[N],preb[N];
int main() {
ios::sync_with_stdio(0);
cin.tie(0);
cout.tie(0);
int n,q;
cin>>n>>q;
int flag = 0;
for(int i = 1;i<=n;i++){
cin>>a[i];
prea[i] = prea[i-1]+a[i];
}
for(int i = 1;i<=n;i++){
a[i+n] = a[i];
prea[i+n] = prea[i+n-1]+a[i+n];
}
for(int i = 1;i<=n;i++){
cin>>b[i];
preb[i] = preb[i-1]+b[i];
}
for(int i = 1;i<=n;i++){
b[i+n] = b[i];
if(b[i]+a[i]<0){
flag = 1;
}
preb[i+n] = preb[i+n-1]+b[i+n];
}
int s,t;
while(q--){
cin>>s>>t;
if(flag){
cout<<"flawed"<<'\n';
continue;
}
if(s==t){
cout<<0<<'\n';
continue;
}
if(s<t){
int minn = prea[t-1] - prea[s-1];
minn = min(minn,preb[s+n-1]- preb[t-1]);
cout<<minn<<'\n';
continue;
}
int minn = prea[t+n-1] - prea[s-1];
minn = min(minn,preb[s-1] - preb[t-1]);
cout<<minn<<'\n';
}
return 0;
}
Details
Tip: Click on the bar to expand more detailed information
Test #1:
score: 100
Accepted
time: 0ms
memory: 7676kb
input:
4 4 2 3 -4 3 1 2 7 -1 1 3 3 1 1 4 1 1
output:
5 -1 -1 0
result:
ok 4 lines
Test #2:
score: 0
Accepted
time: 2ms
memory: 7740kb
input:
4 3 1 2 -3 4 4 -3 2 1 1 1 2 4 3 1
output:
flawed flawed flawed
result:
ok 3 lines
Test #3:
score: -100
Wrong Answer
time: 0ms
memory: 7676kb
input:
6 2 -6 8 -3 5 -9 4 9 -2 8 -4 12 -1 2 6 3 3
output:
1 0
result:
wrong answer 1st lines differ - expected: 'flawed', found: '1'