HDU 1076 An Easy Task

超级简单的一道题,超级水

#include <iostream>
using namespace std;

int main(){
  int T;
  int Y,N;

  cin>>T;
  while(T--){
     cin>>Y>>N;
     int cnt = 0;
     for(;cnt<N;Y++)

        if ((Y%4==0 && Y%100!=0) || Y%400==0)
        ++cnt;
        Y--;
        cout<<Y<<endl;
  }

return 0;
}

注意到一个细节就行了,就是当cnt递增到N-1的时候,Y为N个润年了,这时候cnt++,且=N,这时候Y还是++的,所以在最后Y要--,通过debug更好的理解了for循环俩面三个表达式的运行过程,即循环结束debug箭头返回for,并不代表满足2式(for(1;2;3)),若满足2式,箭头进去循环内执行语句,结束还是要返回for,执行3。

原文地址:https://www.cnblogs.com/zhangmingzhao/p/7256481.html