社区讨论

不知道该怎么形容

P1089[NOIP 2004 提高组] 津津的储蓄计划参与者 1已保存回复 0

讨论操作

快速查看讨论及其快照的属性,并进行相关操作。

当前回复
0 条
当前快照
1 份
快照标识符
@lzii5g5o
此快照首次捕获于
2024/08/06 22:15
2 年前
此快照最后确认于
2024/08/07 08:06
2 年前
查看原帖
CPP
#include <iostream>

using namespace std;

int main()
{
    int mo=0;
    int spend[13];//每个月的花销
    int earing[13];//每个月的预算
    for(int i=1;i<=12;i++)
    {
        scanf("%d",&spend[i]);//输入花销
        earing[i]=300;//每个月的预算刚开始都是300
    }
    int sheng[13],get[13];
    for(int i=1;i<=12;i++)
    {
        sheng[i]=earing[i]-spend[i];
        //printf("剩的钱=%d\n",sheng[i]);
        if(sheng[i]<0)
        {
            printf("-%d",i);
            return 0;
        }//出现钱不够的情况
        get[i]=sheng[i]/100*100;//每个月剩的整百
       // printf("给妈妈的钱=%d\n",get[i]);
        mo=get[i]+mo;//把整百都给妈妈
        //printf("留给下个月的钱=%d\n",sheng[i]-get[i]);
        earing[i+1]+=sheng[i]-get[i];//下个月的钱等于300+上个月剩的零钱
        //printf("\n");
    }
    int li;
    li=mo*0.2;
    //printf("最后剩的钱=%d\n",sheng[12]-get[12]);
   // printf("给妈妈的钱=%d 利润=%d\n",mo,li);
    mo+=sheng[12]-get[12];
    mo+=li;
    printf("%d",mo);
    return 0;
}

40分,wa 2, 3, 5, 7, 9, 10
事实上,将代码放入电脑上测试,会发现其实#2的答案是正确的,可不知道什么原因判判了错。
图片
图片
图片
另外我也尝试了删去换行,加上int()都没有效果。
一些其他人因为没有加最后手头的钱错了相同的点。
:(
可能是洛谷bug,我这里做了详细的排查,应该不是代码的问题(但也说不清楚)。
有有办法的可以解答一下,谢谢。 (●'◡'●)

回复

0 条回复,欢迎继续交流。

正在加载回复...