第十二届蓝桥杯省赛C&C++ 研究生组-卡片

solution1

直接依次计算,思维上最直接

cpp 复制代码
#include<stdio.h>
int main(){
	int a[10], n = 1, t1, t2, flag = 1;
	for(int i = 0; i < 10; i++)
		a[i] = 2021;
	while(flag){
		t1 = n;
		while(t1){
			t2 = t1 % 10;
			a[t2]--;
			if(a[t2] < 0){
				flag = 0;
				break;
			} 
			t1 /= 10;
		}
		if(!t1 && flag) n++;
	}
	printf("%d", n - 1);
	return 0;
}

solution2

观察可知,点数最小的卡片1最先消耗完

==》问题转化为1什么时候用光

cpp 复制代码
#include<stdio.h>
int main(){
	int n = 1, t1, t2, flag = 1, one = 0;
	while(flag){
		t1 = n;
		while(t1){
			t2 = t1 % 10;
			if(t2 == 1) one++;
			if(one == 2021){
				flag = 0;
				break;
			}
			t1 /= 10;
		}
		if(!t1 && flag) n++;
	}
	printf("%d", n);
	return 0;
}
相关推荐
散峰而望2 分钟前
【算法竞赛】C++函数详解:从定义、调用到高级用法
c语言·开发语言·数据结构·c++·算法·github
冷凝雨8 分钟前
复数乘法(C & Simulink)
c语言·开发语言·信号处理·simulink·dsp
CoderCodingNo12 分钟前
【GESP】C++五级真题(贪心思想考点) luogu-B4071 [GESP202412 五级] 武器强化
开发语言·c++·算法
我有一些感想……18 分钟前
An abstract way to solve Luogu P1001
c++·算法·ai·洛谷·mlp
智者知已应修善业1 小时前
【求等差数列个数/无序获取最大最小次大次小】2024-3-8
c语言·c++·经验分享·笔记·算法
..过云雨2 小时前
17-2.【Linux系统编程】线程同步详解 - 条件变量的理解及应用
linux·c++·人工智能·后端
量子炒饭大师3 小时前
Cyber骇客的逻辑节点美学 ——【初阶数据结构与算法】二叉树
c语言·数据结构·c++·链表·排序算法
fpcc3 小时前
C++编程实践—false_type和true_type的实践应用
c++
量子炒饭大师3 小时前
Cyber骇客神经塔尖协议 ——【初阶数据结构与算法】堆
c语言·数据结构·c++·二叉树·github·
王老师青少年编程4 小时前
2025年12月GESP(C++二级): 环保能量球
c++·算法·gesp·csp·信奥赛·二级·环保能量球