赞
踩
题解:
- #include<stdio.h>
- int main()
- {
- int t=0;
- int day[13]={0,31,28,31,30,31,30,31,31,30,31,30,31};
- //因为2022为平年,所以二月为28天
- int b[8]={2,0,2,2};//往数组b放日期
- for(int i=1;i<=12;i++)
- {
- b[4]=i/10;//每月的最高位
- b[5]=i%10;//每月的最低位
- for(int j=1;j<=day[i];j++)
- {
- b[6]=j/10;//天数的最高位
- b[7]=j%10;//天数的最底位
- if(b[4]+1==b[5]&&b[5]+1==b[6]||b[5]+1==b[6]&&b[6]+1==b[7])
- //两种情况:顺子日期偏向月份,如1230 顺子日期偏天数,如0123
- t++;
- }
- }
- printf("%d",t);
- return 0;
- }
附:因为2022年这四位无法与后面的四位形成顺子。例,没有2022.34.00,这样的月份不存在,所以只需要判断后面的四位即可,以下位改善题解。
- #include <bits/stdc++.h>
- using namespace std;
-
- int main()
- {
- int sum = 0;//记得要给初值****
- int day[13] = {0,31,28,31,30,31,30,31,31,30,31,30,31};//七八月都有31天
- int a[4];
- for(int i = 1; i <= 12; i++)
- {
- a[0] = i/10;
- a[1] = i%10;
- for(int j = 1; j <= day[i]; j++)
- {
- a[2] = j/10;
- a[3] = j%10;
- if((a[0] + 1 == a[1] && a[1] + 1 == a[2]) || (a[1] + 1 == a[2] && a[2] + 1 == a[3]) )
- {
- sum++;
- }
- }
- }
- cout << sum ;
- return 0;
- }
闰年:能被400整除或能被4整除不能被100整除。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。