第十二届蓝桥杯省赛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;
}
相关推荐
见过夏天10 小时前
C++ 基础入门完全指南
c++
用户805533698032 天前
不止三件套:QObject 属性系统全关键字与运行时反射!
c++·qt
BadBadBad__AK2 天前
线段树维护区间 k 次方和
c++·数学·算法·stl
卷无止境3 天前
Eigen 库如何借助 OpenMP 加速计算
c++·后端
卷无止境3 天前
OpenMPI、MPICH 与 OpenMP:关系、核心概念与架构全解
c++·后端
郝学胜_神的一滴4 天前
CMake 30:循环语法全解|foreach_while双循环精讲、迭代技巧与实战避坑指南
c++·cmake
卷无止境6 天前
C++ 的Eigen 库全解析
c++
卷无止境6 天前
现代 C++特性大盘点:一门脱胎换骨的老语言
c++·后端
郝学胜_神的一滴6 天前
CMake 27:缓存变量的特性、语法、类型与实操全解
c++·cmake
博客18008 天前
酷宝的使用方法,超好用的免费界面库,C++、MFC可用
c++·mfc·界面库·库来帮·酷宝