QOJ.ac
QOJ
ID | Problem | Submitter | Result | Time | Memory | Language | File size | Submit time | Judge time |
---|---|---|---|---|---|---|---|---|---|
#696774 | #9528. New Energy Vehicle | luoyandanfei | WA | 0ms | 3600kb | C++20 | 2.4kb | 2024-11-01 01:17:28 | 2024-11-01 01:17:34 |
Judging History
answer
#include <bits/stdc++.h>
using namespace std;
int T,n,m;
int main()
{
cin>>T;
while(T--){
cin>>n>>m;
unordered_map<int,int>a;
unordered_map<int,int>b;
vector<int>t(m);
vector<int>x(m);
for(int i=0;i<n;i++){
int A;
cin>>A;
a[i+1]=A;
b[i+1]=A;
}
for(int i=0;i<m;i++){
int x1,t1;
cin>>x1>>t1;
t[i]=t1;
x[i]=x1;
}
for(int i=1;i<m;i++){
x[i]=x[i]-x[i-1];
}
unordered_map<int,bool>c;
for(int i=0;i<m;i++){
c[t[i]]=true;
}
for(int i=1;i<=n;i++){
if(!c[i])t.push_back(i);
}
int k=t.size();
for(int i=0;i<k;i++){
t.push_back(t[i]);
}
// for(int i=1;i<=n;i++){
// cout<<a[i]<<" ";
// }
// cout<<endl;
// for(int i=0;i<m;i++){
// cout<<x[i]<<" "<<t[i]<<endl;
// }
// for(int i=0;i<t.size();i++){
// cout<<t[i]<<" ";
// }
// cout<<endl;
// cout<<endl;
int idx=0;
int cnt=0;
int ans=0;
for(int i=0;i<m;i++){
int count=0;
while(x[i]){
if(x[i]>=a[t[cnt]]){
x[i]-=a[t[cnt]];
count+=a[t[cnt]];
a[t[cnt]]=0;
cnt++;
}
else{
count+=x[i];
a[t[cnt]]-=x[i];
x[i]=0;
}
if(cnt==t.size()){
break;
}
}
if(x[i])break;
ans+=count;
// for(int i=1;i<=n;i++){
// cout<<a[i]<<" ";
// }
// cout<<endl;
// cout<<ans<<endl;
a[t[i]]=b[t[i]];
// for(int i=1;i<=n;i++){
// cout<<a[i]<<" ";
// }
// cout<<endl;
// cout<<endl;
cnt=i+1;
}
for(int i=1;i<=n;i++){
ans+=a[i];
// cout<<a[i]<<" ";
}
// cout<<endl;
cout<<ans<<endl;
// cout<<endl;
}
return 0;
}
Details
Tip: Click on the bar to expand more detailed information
Test #1:
score: 100
Accepted
time: 0ms
memory: 3592kb
input:
2 3 1 3 3 3 8 1 2 2 5 2 1 2 2 1
output:
12 9
result:
ok 2 lines
Test #2:
score: -100
Wrong Answer
time: 0ms
memory: 3600kb
input:
6 3 2 2 2 2 6 1 7 1 2 2 3 3 2 1 6 2 2 3 2 2 5 1 7 2 9 1 2 2 3 3 2 1 6 2 1 1 999999999 1000000000 1 1 1 1000000000 1000000000 1
output:
9 11 0 11 0 2000000000
result:
wrong answer 3rd lines differ - expected: '4', found: '0'