辛辛苦苦的复制粘贴,40?!懒得用数组和for

P1089 [NOIP2004 提高组] 津津的储蓄计划

@[北辰yama](/space/show?uid=112529) 可第二个测试点是2000啊
by South_Sky_Plume5 @ 2019-03-08 21:48:38


@[南天羽5](/space/show?uid=155924) ``` ans=(ans-m[i])%100+300; n+=(ans-m[i])/100*100; ``` 这边n+=(ans-m[i])/100*100;时,ans已经变过了,所以根本不能这么做;要做得先弄一个tmp存,具体代码是这样: ``` int tmp=ans; ans=(tmp-i])%100+300; n+=(tmp[i])/100*100; ```
by QAQ永动机 @ 2019-03-08 22:02:09


@[北辰yama](/space/show?uid=112529) after that???
by South_Sky_Plume5 @ 2019-03-08 22:13:42


@[南天羽5](/space/show?uid=155924) 你对了吗,不对的话重构代码吧
by QAQ永动机 @ 2019-03-08 22:15:51


@[南天羽5](/space/show?uid=155924) 看看题解
by QAQ永动机 @ 2019-03-08 22:16:07


@[北辰yama](/space/show?uid=112529) 额······所以调换位置就可以了?!
by South_Sky_Plume5 @ 2019-03-08 22:19:10


``` #include<bits/stdc++.h> using namespace std; int main(){ int m[13],in=0,ans=300; for(int i=1;i<=12;i++) cin>>m[i]; for(int i=1;i<=12;i++){ if(ans>=m[i]){ int tmp=ans; ans=(tmp-m[i])%100+300; in+=(tmp-m[i])/100*100; } else{ cout<<i*-1; return 0; } } ans+=in*1.2; cout<<ans; return 0; } ```
by QAQ永动机 @ 2019-03-08 22:21:25


@[南天羽5](/space/show?uid=155924)
by QAQ永动机 @ 2019-03-08 22:21:31


@[北辰yama](/space/show?uid=112529) 这样也过了 ```cpp #include<bits/stdc++.h> using namespace std; int main(){ int m[13],in=0,ans=300; for(int i=1;i<=12;i++) cin>>m[i]; for(int i=1;i<=12;i++){ if(ans>=m[i]){ in+=(ans-m[i])/100*100; ans=(ans-m[i])%100+300; } else{ cout<<i*-1; return 0; } } ans=ans+in*1.2-300; cout<<ans; return 0; } ```
by South_Sky_Plume5 @ 2019-03-08 22:30:55


@[南天羽5](/space/show?uid=155924) 过了就好
by QAQ永动机 @ 2019-03-08 22:36:59


上一页 |