当前位置: 首页 > ai >正文

第十二届蓝桥杯 2021 C/C++组 卡片

目录

题目:

题目描述:

题目链接:

思路:

思路详解:

代码:

代码详解:


题目:

题目描述:

题目链接:

卡片 - 蓝桥云课

思路:

思路详解:

由题给出0到9的卡片个2021张,后续拼数不成功的情况其实就是某个数字的卡片数量不够。所以我们可以先打表记录0到9的卡片的剩余数量(即int a[10],索引就代表卡片上的数字)。我先自己定义了一个索引ans表示当前在拼的数,ans从1开始。下面就是正式模拟题意过程,先写一个while(1)的无限循环,每次用临时变量temp记录此时ans的值。先假设目前这个数是拼的出来的,然后把temp逐位拆解,每次拆出来一位数就把数组a中记录的相应卡片数-1.在把temp全部拆解完之后,遍历a数组看是否存在某个数字的卡片<0,只要存在一个数字的卡片<0就表明目前这个ans拼不出来同时标记为false。在循环的最后,判断flag是true还是false,如果是true就ans++继续拼下一个数,如果是false,就直接break退出循环

这里还是有一个小细节要注意,退出时的ans是第一个拼不出来的数,题目问最大能拼到哪个数,所以正确答案是ans-1,填空题还是要注意细节,答案错了就直接没分了

代码:

代码详解:

#include<bits/stdc++.h>  //填空题,正确答案是3181,题目逻辑不是很难但是细节问题还是容易出错 
using namespace std;     //这题我一开始没注意细节输出的是3182就错了 int main()
{int ans=1;  //ans表示的是当前在拼的数 int a[10]={2021,2021,2021,2021,2021,2021,2021,2021,2021,2021};while(1){int temp=ans;  //ans表示的是当前在拼的数,用临时变量temp来存 while(temp!=0)  //temp!=0表示temp还没有被完全删完,这个while过程表示把temp的每一位拆出来 {a[temp%10]--; //把当前temp的最后一位的卡片数减1 temp/=10;     //删去temp的最后一位 } bool flag=true;   //先标记这个ans能拼出来for(int i=0;i<10;i++)  //遍历所有数字的卡片数 {if(a[i]<0)    //如果拼完ans这个数存在某个卡片数<0,说明ans拼不出来 {flag=false;  //标记这个ans拼不出来 break;       //只要存在一个卡片数<0就拼不出来,直接退出 }}if(flag==true)  //如果能拼出来就尝试下一个数,即ans++ {ans++;}else            //如果拼不出来就直接break退出 {break;}}cout<<ans-1<<endl;  //注意:退出时的ans是第一个拼不出来的数,题目问最大能拼到哪个数//所以正确答案是ans-1,填空题还是要注意细节,答案错了就直接没分了 return 0;
}

http://www.xdnf.cn/news/2588.html

相关文章:

  • 分发糖果(困难)
  • Centos小白之在CentOS8.5中安装Rabbitmq 3.10.8
  • MinecraftPVP发展史
  • 【默子AI】万字长文:MCP与A2A协议详解
  • 数智双翼,生态共赢:中钧科技“双帮”如何领航企业全域升级?
  • JavaScript:从DOM概述到window对象的常见事件
  • 【linux】git安装、升级
  • femap许可分配策略
  • C# 如何获取文件名禁止使用的字符
  • 蓝桥杯 18. 机器人繁殖
  • SCI投稿时的Title Page模板
  • git 查看用户信息
  • 从微服务到AI服务:Nacos 3.0如何重构下一代动态治理体系?
  • Linux按键驱动测试
  • 【QT】QT控制硬件
  • 从Flask到智能体:装饰器模式在AI系统中的架构迁移实践
  • 《商业世界的开源法则:协议选择与商业模式创新》
  • 第二部分:网页的妆容 —— CSS(下)
  • 人工智能搜索时代:如何优化SEO以保持领先
  • 为什么PPT中的视频无法播放?
  • 02 面向对象
  • Uniapp:showLoading(等待加载)
  • 在Spark集群中搭建Standalone
  • 【刷题Day29】Python/JAVA - 03(浅)
  • 一个结合了Deepseek-R1和V3能力的混合推理模型:DeepSeek-R1T-Chimera
  • 【Python Web开发】03-HTTP协议
  • Python 正则表达式 re 包
  • 1.文档搜索软件Everything 的使用介绍
  • pdf.js移动端预览PDF文件时,支持双指缩放
  • uniapp实现统一添加后端请求Header方法