社区讨论
45fen 求调
P5690[CSP-S 2019 江西] 日期参与者 5已保存回复 11
讨论操作
快速查看讨论及其快照的属性,并进行相关操作。
- 当前回复
- 10 条
- 当前快照
- 1 份
- 快照标识符
- @m1a1z7el
- 此快照首次捕获于
- 2024/09/20 09:39 去年
- 此快照最后确认于
- 2025/11/04 20:53 4 个月前
我发现02-29过不了,求看哪里错了
CPP#include<bits/stdc++.h>
using namespace std;
char a,b,c,d,e;
int ans,dy;
void hack_one() {
dy=(d-'0')*10+e-'0';
if(dy>31) ans++;
if(dy==0) ans++;
}
void hack_two() {
dy=(d-'0')*10+e-'0';
if(dy>30) ans++;
if(dy==0) ans++;
}
void hack_thee() {
dy=(d-'0')*10+e-'0';
if(dy>28) ans++;
if(dy==0) ans++;
}
void hack(int sum) {
ans++;
int cnt=sum/10,num=sum-(cnt*10);
if(num==2) num=12;
if(num=1||num==3||num==5||num==7||num==8||num==10||num==12)
hack_one();
else if(num==4||num==6||num==9||num==11)
hack_two();
else if(num==2) hack_thee();
}
int main() {
scanf("%c%c%c%c%c",&a,&b,&c,&d,&e);
int sum=(a-'0')*10+b-'0';
if(sum<=12) {
if(sum=1||sum==3||sum==5||sum==7||sum==8||sum==10||sum==12)
hack_one();//处理31天月份
else if(sum==4||sum==6||sum==9||sum==11)
hack_two();//处理30天月份
else if(sum==2) hack_thee();//处理2月;
}
else {
hack(sum);//处理月份>12的月份
}
cout<<ans;
return 0;
}
回复
共 11 条回复,欢迎继续交流。
正在加载回复...