第十二届蓝桥杯省赛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;
}
相关推荐
王维同学6 小时前
[自学][Windows C++]RunOnceEx 注册表分组键的安全遍历
c++·windows·安全·开源
Scott9999HH7 小时前
告别流量波动玄学!从法拉第电磁定律到底层 C/C++ 流量累积算法,深度解密工业级电磁流量计选型与开发
c语言·c++·算法
脱胎换骨-军哥8 小时前
C++/Rust无缝互操作:混合系统新常态
开发语言·c++·rust
天空'之城8 小时前
C 语言工业级通用组件手写 06:固定块内存池
c语言·嵌入式开发·内存池·底层优化
旖-旎9 小时前
LeetCode 279:完全平方数(完全背包)—— 题解
c++·算法·leetcode·动态规划·背包问题
十月的皮皮10 小时前
stm20260720-从新手 C 到量产 STM32 工程:程序设计推导指南
c语言·开发语言·stm32·stm32cubemx·hal库
Echo缘10 小时前
嵌入式系统C语言资源分类与内存分布分析
c语言·开发语言
胖大和尚10 小时前
C++ 多线程编程的实现方式
c++·thread
在水一缸11 小时前
深入浅出 Catch2:现代 C++ 测试框架的优雅实践
开发语言·c++·单元测试·log4j·测试框架·catch2
2401_8414956412 小时前
【数据结构】B*树
数据结构·c++·b树·算法·删除·插入·三分分裂