蓝桥杯真题:卡片[通俗易懂]

蓝桥杯

大家好,又见面了,我是你们的朋友全栈君。

题目描述

本题为填空题,只需要算出结果后,在代码中使用输出语句将所填结果输出即可。

小蓝有很多数字卡片,每张卡片上都是数字 0到 9。 小蓝准备用这些卡片来拼一些数,他想从 1 开始拼出正整数,每拼一个, 就保存起来,卡片就不能用来拼其它数了。 小蓝想知道自己能从 1 拼到多少。 例如,当小蓝有 30 张卡片,其中 0 到 9 各 3 张,则小蓝可以拼出 11 到 1010, 但是拼 11 时卡片 1 已经只有一张了,不够拼出 11。 现在小蓝手里有 0 到 9 的卡片各 2021 张,共 20210 张,请问小蓝可以从 1 拼到多少? 提示:建议使用计算机编程解决问题

运行限制

  • 最大运行时间:1s
  • 最大运行内存: 128M

这题暴力就完事了,纯纯的模拟,不过注意边界条件是-1而不是0:

#include <bits/stdc++.h>
using namespace std;
vector<int> num(2020,2021);

bool check(int n)
{
  while(n)
  {
    num[n%10]--;
    if(num[n%10]==-1) return false;
    n/=10;
  }
  return true;
}


int main()
{
  // 请在此输入您的代码
  int ans=1;
  while(check(ans))
  {
    ans++;
  }
  cout<<ans-1;
  // cout<<3181;
  return 0;
}

答案是3181

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/126489.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • 【实践与问题解决38】win10桌面图标变成一个空白图标「建议收藏」

    【实践与问题解决38】win10桌面图标变成一个空白图标「建议收藏」1问题描述:桌面部分图标显示空白但是点击可以正常打开程序(快捷方式没有改变路径依旧可以打开程序)2问题原因:Windows10系统中,为了加速图标的显示,当第一次对图标进行显示时,系统会对文件或程序的图标进行缓存。之后,当我们再次进入到某个文件夹需要显示该图标时,系统会直接从缓存中读取数据,从而大大加快显示速度。也正因为如此,当缓存文件出现问题时,就会引发系统图标显示不正常。3解决方案:3.1方案一:只需要将有问题的图标缓存文件删除掉,让系统重新建立图标缓存即可。第一步:

  • linux//unix实用基本命令小全

    linux//unix实用基本命令小全

  • Qt中自定义QTreeWidget实现节点拖拽复制功能[通俗易懂]

    Qt中自定义QTreeWidget实现节点拖拽复制功能[通俗易懂]QT中在QWidget支持拖拽功能,QTreeWidget继承自QWidget,所以自然也具有节点的拖拽功能。拖拽包含两个功能:一个是拖动(Drag),一个是放下(Drop)。拖动的数据是QMimeData数据,MIME数据定义格式:类型/数据(注意中间有斜线)。若被拖动的对象放下的控件,不接受拖动的对象,Qt光标显示禁用的形状(一个禁用形状)。开始拖动:通过调用QDrag::exec()…

  • 小区口的凉皮大叔,实力演绎如何低调地月入30000

    小区口的凉皮大叔,实力演绎如何低调地月入30000

  • javascript 数组复制「建议收藏」

    javascript 数组复制「建议收藏」javascript数组复制数组不能直接等于一个数组例如vararr=arr1数组是内置对象,存储的是数组的地址,这样复制就等于复制了地址,更改一个数组的值,另一个也会更改复制方法slice()数组截取vararr=[1,2,3]vararr2=arr.splice();…

  • Android之ViewStub的简单使用

    Android之ViewStub的简单使用1.viewstub就是动态加载试图;也就是在我们的app启动绘制页面的时候,他不会绘制到view树中;当在代码中执行inflate操作后,她才会被添加到试图中。其实ViewStub就是一个宽高都为0的一个View,它默认是不可见的,只有通过调用setVisibility函数或者Inflate函数才会将其要装载的目标布局给加载出来,从而达到延迟加载的效果,这个要被加载的布局通过android:l…

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号