QOJ.ac
QOJ
ID | 题目 | 提交者 | 结果 | 用时 | 内存 | 语言 | 文件大小 | 提交时间 | 测评时间 |
---|---|---|---|---|---|---|---|---|---|
#290110 | #7964. 转化 | daydream# | WA | 79ms | 8724kb | C++20 | 1.2kb | 2023-12-24 13:38:35 | 2023-12-24 13:38:35 |
Judging History
answer
#include<bits/stdc++.h>
#define db double
#define LL long long
#define pb push_back
#define eb emplace_back
#define pli pair<LL,int>
#define pii pair<int,int>
#define fr first
#define sc second
#define mp make_pair
using namespace std;
const int dx[]={0,1,0,-1,1,1,-1,-1},
dy[]={1,0,-1,0,1,-1,1,-1};
int n;
void solve()
{
cin>>n;vector<int> a(n+1),b(n+1),c(n+1),ex(n+1);
for(int i=1;i<=n;++i) cin>>a[i];
for(int i=1;i<=n;++i) cin>>b[i];
for(int i=1;i<=n;++i) cin>>c[i];
LL sum1=0,sum2=0;
for(int i=1;i<=n;++i)
{
if(a[i]) a[i]+=c[i],c[i]=0,sum1+=min(a[i],b[i]);
else if(b[i]&&c[i]) sum2+=max(0,min(b[i]-1,c[i]));
}
for(int i=1;i<=n;++i)
{
LL ans=sum1+a[i]-min(a[i],b[i]);
if(sum1) ans+=sum2;
cout<<ans<<' ';
}
cout<<'\n';
LL sum=0,tot=0;int cnt=0;vector<LL> vt;
for(int i=1;i<=n;++i)
if(a[i]) sum+=a[i];
else if(!b[i]) ++cnt,vt.pb(c[i]);
else tot+=c[i];
vt.pb(tot);++cnt;
sort(vt.begin(),vt.end(),greater<LL>());
for(int i=1;i<cnt;++i) vt[i]+=vt[i-1];
if(cnt) sum+=vt[min(cnt+0ll,sum)-1];
cout<<sum<<'\n';
}
int main()
{
ios::sync_with_stdio(false);
cin.tie(0);cout.tie(0);
int TT=1;
// cin>>TT;
for(;TT;--TT) solve();
return 0;
}
详细
Test #1:
score: 0
Wrong Answer
time: 79ms
memory: 8724kb
input:
351493 0 37836791 46095966 46912389 21595941 0 3 86568894 3 0 0 0 0 39910208 0 2 4 86885825 1 67660833 0 24488082 52447896 0 67190942 70457491 11166998 90470470 11095822 0 0 5 47222930 2 49736354 0 0 0 77339472 0 5 3 0 25347727 0 3 2 0 48844622 0 65142757 1 73733079 80634668 46683173 0 31644647 9760...
output:
60073472376204 60073472376204 60073472376204 60073481727701 60073472376204 60073472376204 60073528128564 60073472376204 60073844358663 60073472376204 60073472376204 60073472376204 60073472376204 60073472376204 60073472376204 60073667185445 60073550333929 60073472376204 60073631548329 60073472376204 ...
result:
wrong answer 1st lines differ - expected: '60073965049724 60073472376204 ...4 60073701685447 60073472376204', found: '60073472376204 60073472376204 ... 60073472376204 60073472376204 '