有人帮忙看看为什么只有八十分吗

P3817 小A的糖果

@[Davnaver](/user/1139123) ans开long long
by Lieyiqi @ 2024-02-23 10:32:04


@[Davnaver](/user/1139123) @[Davnaver](/user/1139123) 不开long long见祖宗
by huangzhixia @ 2024-02-23 10:56:22


```cpp #include<bits/stdc++.h> using namespace std; int n,x; int main(){ long long s=0;//要长 cin>>n>>x; int a[n]; cin>>a[1]; if(a[1]>x){//跳过1,从中间开始可最少 s+=a[1]-x; a[1]=x; }for(int i=2;i<=n;i++){ cin>>a[i]; if(a[i]+a[i-1]>x){//判定时间~~ s+=a[i]+a[i-1]-x; a[i]=x-a[i-1]; } }cout<<s<<endl; return 0; } ```
by void_AC @ 2024-02-23 10:57:19


这是五年级都能做的淼题(~~我五年级的~~)
by void_AC @ 2024-02-23 11:00:03


关注下小蒟蒻呗,(必回关)
by void_AC @ 2024-02-23 11:01:47


@[Lieyiqi](/user/958338) 谢谢解决了
by Davnaver @ 2024-02-23 11:09:28


@[Davnaver](/user/1139123) 2024,不开龙龙见祖宗!
by Lieyiqi @ 2024-02-23 11:40:07


@[Davnaver](/user/1139123) ### 加一个long long 就好了 帮你改了一下: ``` #include<bits/stdc++.h> using namespace std; long long x,n,ans=0,a[100005]; int main(){ cin>>n>>x; for(long long i=1;i<=n;i++){ cin>>a[i]; } for(long long i=1;i<=n;i++){ while(a[i]>x){ a[i]--; ans++; } while(a[i]+a[i+1]>x){ a[i+1]--; ans++; } } cout<<ans<<endl; return 0; } ```
by lvwenjie @ 2024-04-01 18:49:21


|