hdu 模拟 贪心 4550
卡片游戏Time Limit: 3000/1000 MS (Java/Others) Memory Limit: 65535/32768 K (Java/Others) Total Submission(s): 1704 Accepted Submission(s): 500Problem Description小明最近宅在家里无聊,于是他发明了一种有趣的游戏,游戏道具是N张叠在一起的卡片,每张卡片上都有一个数字,数字的范围是0~9,游戏规则如下:首先取最上方的卡片放到桌子上,然后每次取最上方的卡片,放到桌子上已有卡片序列的最右边或者最左边。当N张卡片全部都放到桌子上后,桌子上的N张卡片构成了一个数。这个数不能有前导0,也就是说最左边的卡片上的数字不能是0。游戏的目标是使这个数最小。现在你的任务是帮小明写段程序,求出这个最小数。Input 第一行是一个数T,表示有T组测试数据; 然后下面有T行, 每行是一个只含有0~9的字符串,表示N张叠在一起的卡片,最左边的数字表示最上方的卡片。[Technical Specification] T<=1000 1 <= N <= 100Output 对于每组测试数据,请在一行内输出能得到的最小数。Sample Input 3 565 9876543210 9876105432Sample Output 556 1234567890 1678905432Source 2013金山西山居创意游戏程序挑战赛——初赛(2)Recommend liuyiding | We have carefully selected several similar problems for you: 5634 5633 5632 5631 5630
1 /* 2 分析 : 给你的一串数字中 大致 分为两种情况 1 : 有 0 2: 无 0 3 之所以 有这两种情况是因为 0 不能放在开头 4 现在 考虑一下 这两种情况 能不能尽量的合并处理 应该能 5 */ 6 //找到 所给的 数字钟最靠后并且最小(第一次的时候,不能是0)数字,这个数字就放在 开头 这个数字后面跟随的数字就放在最末位 , 7 // 然后 除了这几个数字 剩下的前面的数字也执行此操作(这次 最小的数字 可以是0 )然后 放到上一次 排列数字的中间 8 #include<cstdio> 9 #include<cstring> 10 #include<algorithm> 11 using namespace std; 12 int main() 13 { 14 char a[111]; 15 int b[111],i,j,q,m,n,l,miin,address,c[111],begin,end; //begin 和 end 分别代表着 最后队列里 还未填充 部分的 开始 和结束 16 scanf("%d",&n); 17 while(n--) 18 { 19 scanf("%s",a); 20 l=strlen(a); 21 for(miin=1000,i=0;i<l;i++) 22 { 23 b[i]=a[i]-'0'; 24 } 25 q=begin=0; 26 address=10; 27 while(address) 28 { 29 for(i=0;i<l;i++) 30 { 31 if(b[i]==11) 32 break; 33 if(q==0) 34 { 35 if(miin>=b[i]&&b[i]!=0) 36 { 37 address=i; //找到最后一个最小且不等零的数字的 地址 38 miin=b[i]; 39 } 40 } 41 else 42 if(miin>=b[i]) 43 { 44 address=i; 45 miin=b[i]; 46 } 47 } 48 miin=1000; 49 q++; 50 c[begin++]=b[address]; 51 b[address]=11; 52 } 53 for(i=0;i<begin;i++) 54 printf("%d",c[i]); 55 for(i=0;i<l;i++) 56 { 57 if(b[i]!=11) 58 printf("%d",b[i]); 59 } 60 printf("\n"); 61 memset(a,'0',sizeof(a)); 62 } 63 }
转载于:https://www.cnblogs.com/A-FM/p/5222933.html
hdu 模拟 贪心 4550相关推荐
- 【CodeForces Round #550】A-F | 模拟 | 贪心 | 高精 | BFS | 二分图 | E
今年怎么没有愚人节比赛了 CF你看看人家洛谷 唉鸭原来那边还没到愚人节呢- 愚人节比赛还是有的,在今晚 qwq [CodeForces 1144 A-F] Tags:模拟 贪心 BFS 高 ...
- 1739 - 放置盒子 - 模拟 - 贪心 - 数学
欢迎关注更多精彩 关注我,学习常用算法与数据结构,一题多解,降维打击. 文章目录 题目描述 题目描述 题目剖析&信息挖掘 解题思路 方法一 模拟+贪心+数学 分析 思路 注意 知识点 复杂度 ...
- 1/22 测试一(STL 模拟 贪心)C.(贪心,给出气球,输出最好成绩)Contest Balloons
1/22 测试一(STL 模拟 贪心) C.(贪心,给出气球,输出最好成绩)Contest Balloons One tradition of ACM-ICPC contests is that a ...
- hdu 4974 贪心
http://acm.hdu.edu.cn/showproblem.php?pid=4974 n个人进行选秀,有一个人做裁判,每次有两人进行对决,裁判可以选择为两人打分,可以同时加上1分,或者单独为一 ...
- bzoj 2457 [BeiJing2011]双端队列 模拟+贪心
[BeiJing2011]双端队列 Time Limit: 10 Sec Memory Limit: 128 MB Submit: 457 Solved: 203 [Submit][Status] ...
- Smzzl with Greedy Snake 模拟-贪心-阅读理解
题意 : 给出n个食物及坐标,必须按顺序吃掉,且只有在吃掉一个后,才会出现下一个. 从(x, y)出发,沿着d方向,每次可以前进或者顺时针或者逆时针转90度,用时都为1,求构造用时最少的方案并记录方案 ...
- hdu 5720(贪心)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=5720 官方题解: 考虑三角形三条边a,b,c (a≥b) 的关系a−b<c,a+b>c ...
- hdu 4982 贪心构造序列
http://acm.hdu.edu.cn/showproblem.php?pid=4982 给定n和k,求一个包含k个不相同正整数的集合,要求元素之和为n,并且其中k-1的元素的和为完全平方数 枚举 ...
- HDU2111 Saving HDU【贪心】
Saving HDU Time Limit: 3000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Total Su ...
最新文章
- Scons构建C++项目
- php贺卡生成,用php与mysql的电子贺卡程序
- linux之彻底卸载mysql
- c++ try catch语句_再问你一遍,你真的了解try..catch(finally)吗???
- Linux 新加一块硬盘,添加到已有逻辑卷扩容
- vue 获取元素高度
- 计算机游戏制作英文要学好吗,有关怎么不沉迷于电脑游戏的英语作文你的同学MICHAEL沉迷于电脑游戏中,影响了学习.作为好朋友,你要怎么帮助他?写一篇80词左右的英语作文....
- php 程序性能分析工具,php的性能分析工具:xhprof
- 安装服务器系统教程20180615
- 如何拥有一个游戏策划的思维
- 微信浏览器字体调整 PHP,h5禁止微信内置浏览器调整字体大小
- 处理导入的原理图库中Designator字体不对的问题
- 最省心的Python版本和第三方库管理——初探Anaconda
- 从粉丝经济看粉丝运营
- 中北大学计算机研究生学院,【计算机考研】院校信息-中北大学
- Rhel 7 /Centos 7配置快速启动栏启动以Firefox为例
- HRM人力资源管理平台
- 广州大学 计算机 非全,广州大学在职研究生就是非全日制研究生吗?
- IDC X 得帆 |低代码PaaS驱动集团企业数字化创新
- 【考研数学一】2019考研真题和参考答案