新手,觉得难
2026-08-12 20:55:31
发布于:江苏
7阅读
0回复
0点赞
错的好离谱
#include<iostream>
#include<cmath>
using namespace std;
int mdd[13] = {0, 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31};
int main(){
int y, m, d;
int t;
cin >> t;
int k, x;
for(int i = 1; i <= t; i++){
cin >> k >> t;
if(k == 1){//k == 1
d += t;
if(m == 2 && y % 400 == 0 || y % 100 != 0 && y % 4 == 0) mdd[2] = 29;
else mdd[2] = 28;
if(d > mdd[m]){
d -= mdd[m];
m++;
if(m > 12){
m -= 12;
y++;
}
}
}//k == 1
else{
d -= t;
if(d < 1){
if(m == 2 && y % 400 == 0 || y % 100 != 0 && y % 4 == 0) mdd[2] = 29;
else mdd[2] = 28;
d += mdd[m] - abs(d);
m--;
if(m < 1){
y--;
m += 12 - abs(m);
}
}//k == 2
}
}
cout << y << ' ' << m << ' ' << y;
return 0;
}
全部评论 1
no
4小时前 来自 浙江
0










有帮助,赞一个