第十二届蓝桥杯大赛软件赛决赛C/C++ 研究生组-完全日期

在这里插入图片描述

solution1

#include<iostream>
#include<cmath>
using namespace std;
int judge(int y){
	if(y % 400 == 0 || (y % 4 == 0 && y % 100 != 0)) return 1;
	return 0;
}
int main(){
	int h[13][2] = {{0,0}, {31, 31}, {28, 29}, {31, 31}, {30, 30}, {31, 31}, {30, 30}, {31, 31}, {31, 31}, {30, 30}, {31, 31}, {30, 30}, {31,31}};
	int d[3] = {2001, 1, 1}, count = 0, t, leap, sum, date[3], sqr;
	while(!(d[0] == 2021 && d[1] == 12 && d[2] == 31)){
		sum = 0;
		for(int i = 0; i < 3; i++) {
			date[i] = d[i];
			while(date[i]){
				t = date[i] % 10;
				date[i] /= 10;
				sum += t;
			}
		}
		sqr = sqrt(sum);
		if(sqr * sqr == sum) count++;
		leap = judge(d[0]);
		d[2]++;
		if(d[2] > h[d[1]][leap]){
			d[2] = 1;
			d[1]++;
		}
		if(d[1] > 12){
			d[1] = 1;
			d[0]++;
		}
	}
	printf("%d", count);
	return 0;
}

solution2

#include<iostream>
#include<cmath>
int main(){
	int h[13] = {0, 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31};
	int count = 0, y, m, d, sum, sqr;
	for(int i = 1; i <= 21; i++){
		sum = 0;
		if((i + 2000) % 400 == 0 || ((i + 2000) % 4 == 0 && (i + 2000) % 100 != 0)) h[2] = 29;
		else h[2] = 28;
		for(int j = 1; j <= 12; j++){
			for(int k = 1; k <= h[j]; k++){
				y = 2 + i % 10 + i / 10;
				m = j % 10 + j / 10;
				d = k % 10 + k / 10;
				sum = y + m + d;
				sqr = sqrt(sum);
				if(sum == sqr * sqr) count++;
			}
		}
	}
	printf("%d", count);
	return 0;
}

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-03-21 17:40:02       98 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-03-21 17:40:02       106 阅读
  3. 在Django里面运行非项目文件

    2024-03-21 17:40:02       87 阅读
  4. Python语言-面向对象

    2024-03-21 17:40:02       96 阅读

热门阅读

  1. spring boot 如何升级 Tomcat 版本

    2024-03-21 17:40:02       47 阅读
  2. 什么是网站的外联机制?

    2024-03-21 17:40:02       46 阅读
  3. docker 常用命令

    2024-03-21 17:40:02       40 阅读
  4. 算法刷题day34:并查集

    2024-03-21 17:40:02       49 阅读
  5. haproxy的无缝热重启的实现原理

    2024-03-21 17:40:02       41 阅读
  6. js实现修改图片的底色

    2024-03-21 17:40:02       44 阅读
  7. jupyter | jupyter里执行shell命令

    2024-03-21 17:40:02       37 阅读
  8. 人工智能在心理健康评估和干预中的应用

    2024-03-21 17:40:02       44 阅读