社区讨论

0分与100分的区别是!

P1190[NOIP 2010 普及组] 接水问题参与者 9已保存回复 18

讨论操作

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

当前回复
18 条
当前快照
1 份
快照标识符
@mi6mritq
此快照首次捕获于
2025/11/20 07:25
4 个月前
此快照最后确认于
2025/11/20 07:29
4 个月前
查看原帖
CPP
#include<cstdio>
int main()
{
    long long n,m,a[100001],s[100001],last,no;
    scanf("%lld%lld",&n,&m);
    for(int i=1;i<=n;i++)scanf("%lld",&a[i]);
    for(int i=1;i<=m;i++)s[i]=a[i];
    last=m;
    no=n;
    for(int i=1;;i++)
    {
        for(int j=1;j<=m;j++)
        {
            s[j]--;
            if(s[j]==0)
            {
                no--;
                s[j]=a[++last];
            }
        }
        if(last>n&&no<1){printf("%lld",i);return 0;}
    }
}
#各位,如上是我的AC代码,各位可以试试将s[j]=a[++last];改为s[j]=a[last++];,然后你会惊喜的发现:居然是0分!
#所以,童鞋们一定要弄清楚++在前(先加后用)与++在后(先用后加)的区别!不然会像我一样WA!

回复

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

正在加载回复...