我是靠谱客的博主 碧蓝口红,这篇文章主要介绍【蓝桥杯 试题B:卡片】小蓝有很多数字卡片,每张卡片上都是数字0到9。 小蓝准备用这些卡片来拼一些数,他想从1开始拼现在小蓝手里有0到9的卡片各2021张,共20210张,请问小蓝可以从1拼到多少?,现在分享给大家,希望可以做个参考。
复制代码
1
2试题B:卡片
本题总分:5分
【问题描述】
小蓝有很多数字卡片,每张卡片上都是数字0到9。
小蓝准备用这些卡片来拼一些数,他想从1开始拼出正整数,每拼一个,就保存起来,卡片就不能用来拼其它数了。
小蓝想知道自己能从1拼到多少。
例如,当小蓝有30张卡片,其中0到9各3张,则小蓝可以拼出1到10,但是拼11时卡片1已经只有一张了,不够拼出11。
现在小蓝手里有0到9的卡片各2021张,共20210张,请问小蓝可以从1拼到多少?
提示:建议使用计算机编程解决问题。
【答案提交】
这是一道结果填空的题,你只需要算出结果后提交即可。本题的结果为一
个整数,在提交答案时只填写这个整数,填写多余的内容将无法得分。
【解题答案】:
3181
【C语言代码实现】:
复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38#include<stdio.h> main() { int a[10],i,m,n,t; for(i=0;i<10;i++) { a[i]=2021; //卡牌赋值 } for(m=1;;m++) //当前数值 { t=m; // while(t!=0) //判断一个数是否已判断完成 { n=t%10; //判断一个数的各个位上所用到的卡牌 t=t/10; //取数的个十百千位 switch(n) { case 1:a[1]--;break; case 2:a[2]--;break; case 3:a[3]--;break; case 4:a[4]--;break; case 5:a[5]--;break; case 6:a[6]--;break; case 7:a[7]--;break; case 8:a[8]--;break; case 9:a[9]--;break; case 0:a[0]--;break; } if(a[n]==0) //如果0-9中的其中一种卡牌用完,则退出 break; } if(a[n]==0) //如果0-9中的其中一种卡牌用完,则退出 break; } printf("%dn",m); }
最后
以上就是碧蓝口红最近收集整理的关于【蓝桥杯 试题B:卡片】小蓝有很多数字卡片,每张卡片上都是数字0到9。 小蓝准备用这些卡片来拼一些数,他想从1开始拼现在小蓝手里有0到9的卡片各2021张,共20210张,请问小蓝可以从1拼到多少?的全部内容,更多相关【蓝桥杯内容请搜索靠谱客的其他文章。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复