比赛 防止颓废的小练习v0.2 评测结果 AAAAAAAAAA
题目名称 接水问题 最终得分 100
用户昵称 NVIDIA 运行时间 0.014 s
代码语言 C++ 内存使用 0.31 MiB
提交时间 2016-10-18 10:01:22
显示代码纯文本
  1. #include<bits/stdc++.h>
  2. using namespace std;
  3. int main()
  4. {
  5. freopen("waterj.in","r",stdin);
  6. freopen("waterj.out","w",stdout);
  7. int i,n,m,c,c2,tim=0,first,w[10010],nexw[10010],befw[10010];
  8. cin>>n>>m;
  9. for (i=1;i<=n;i++)
  10. {
  11. cin>>w[i];
  12. nexw[i]=i+1;
  13. befw[i]=i-1;
  14. }
  15. first=1;
  16. c=n;
  17. while (c)
  18. {
  19. tim++;
  20. c2=m;
  21. for (i=first;c>0&&c2>0&&i<=n;i=nexw[i])
  22. {
  23. c2--;
  24. w[i]--;
  25. if (w[i]==0)
  26. {
  27. c--;
  28. if (befw[i]==0)
  29. first=nexw[i];
  30. nexw[befw[i]]=nexw[i];
  31. befw[nexw[i]]=befw[i];
  32. }
  33. }
  34. }
  35. cout<<tim<<endl;
  36. return(0);
  37. }