HDU 5055 Bob and math problem(简单贪心)
http://acm.hdu.edu.cn/showproblem.php?pid=5055
题目大意:
给你N位数,每位数是0~9之间。你把这N位数构成一个整数。
要求:
1、必须是奇数
2、整数的前面没有0
3、找到一个最大的整数
如果满足1、2、3条件,就输出这个数,不满足就输出-1.
给个例子
3
1 0 0
这个构成的奇数是001,这个数前面有0,应该输出-1
解题思路:
对给的N个数升序排序。
然后最小的开始找,找到一个奇数,然后把它放在最左边。
然后判断这个数是否,满足要求。满足要求,就输出。不满足就输出-1
AC代码:
#include<cstdio>
#include<algorithm>
using namespace std; #define MAXN 110 int main(){
int i, j, n, digit[MAXN];
while(~scanf("%d", &n)){
for(i = ; i < n; ++i){
scanf("%d", &digit[i]);
} sort(digit, digit + n);//升序 for(i = ; i < n; ++i){//从左边开始找,找出一个奇数
if(digit[i] & ){//if(digit[i] % 2 == 1)
int t = digit[i];
for(j = i; j > ; --j){//将所有的数往右移一位
digit[j] = digit[j - ];
}
digit[j] = t;//把找到的奇数放在最后一位
break;//找到了 就跳出循环
}
} if(digit[n - ] && i < n){//这个整数没有前导0,并且在这个大数是奇数
for(j = n - ; j > ; --j)
printf("%d", digit[j]);
printf("%d\n", digit[j]);
}else{
puts("-1");
} }
return ;
}
HDU 5055 Bob and math problem(简单贪心)的更多相关文章
- HDU 5055 Bob and math problem(结构体)
主题链接:http://acm.hdu.edu.cn/showproblem.php?pid=5055 Problem Description Recently, Bob has been think ...
- hdu 5055 Bob and math problem (很简单贪心)
给N个数字(0-9),让你组成一个数. 要求:1.这个数是奇数 2.这个数没有前导0 问这个数最大是多少. 思路&解法: N个数字从大到小排序,将最小的奇数与最后一位交换,把剩下前N-1位从大 ...
- hdu 5055 Bob and math problem
先把各个数字又大到小排列,如果没有前导零并且为奇数,则直接输出.如果有前导零,则输出-1.此外,如果尾数为偶数,则从后向前找到第一个奇数,并把其后面的数一次向前移动,并把该奇数放到尾部. 值得注意的是 ...
- hdu----(5055)Bob and math problem(贪心)
Bob and math problem Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Oth ...
- 计蒜客 30990 - An Olympian Math Problem - [简单数学题][2018ICPC南京网络预赛A题]
题目链接:https://nanti.jisuanke.com/t/30990 Alice, a student of grade 6, is thinking about an Olympian M ...
- HDU 1757 A Simple Math Problem 【矩阵经典7 构造矩阵递推式】
任意门:http://acm.hdu.edu.cn/showproblem.php?pid=1757 A Simple Math Problem Time Limit: 3000/1000 MS (J ...
- hdu 5435 A serious math problem
A serious math problem Time Limit: 10000/5000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Oth ...
- hdu 1757 A Simple Math Problem (乘法矩阵)
A Simple Math Problem Time Limit: 3000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Ot ...
- HDU 5615 Jam's math problem
Jam's math problem Problem Description Jam has a math problem. He just learned factorization.He is t ...
随机推荐
- scala tail recursive优化,复用函数栈
在scala中如果一个函数在最后一步调用自己(必须完全调用自己,不能加其他额外运算子),那么在scala中会复用函数栈,这样递归调用就转化成了线性的调用,效率大大的提高.If a function c ...
- 设置R启动时自动加载常用的包或函数
在我前面的文章(http://www.cnblogs.com/homewch/p/5749850.html)中有提到R可以自定义启动环境,需要修改R安装文件中的ect文件夹下的配置文件Rprofile ...
- Javascript并发模型和事件循环
Javascript并发模型和事件循环 JavaScript的"并发模型"是基于事件循环的,这个并发模型有别于Java的多线程, javascript的并发是单线程的. Javas ...
- SqlServer操作大全
一.基础1.说明:创建数据库CREATE DATABASE database-name2.说明:删除数据库drop database dbname3.说明:备份sql server--- 创建 备份数 ...
- Android 之 ListView的学习
ListView 是一个控件,一个在垂直滚动的列表中显示条目的一个控件,这些条目的内容来自于一个ListAdapter .EditText Button TextView ImageView Chec ...
- 服务器部署多个tomcat经验
如果想在服务器上部署两个或多个tomcat项目,可以采用多个端口的方法: 如何修改Tomcat端口? 答:在Tomcat的conf文件夹里有个server.xml文件,修改里面的<Conne ...
- F-并查集
Problem F Time Limit : 2000/1000ms (Java/Other) Memory Limit : 60000/30000K (Java/Other) Total Sub ...
- HTML基础篇之HTML基本元素
<h1>标题一</h1> <h2>标题二</h2> <h3>标题三</h3> <h4>标题四</h4> ...
- baiduMap
1.把百度地图定位API(下载地址:http://lbsyun.baidu.com/sdk/download?selected=location),里面的lib福祉到自己的项目中 2,进行相关配置(官 ...
- EMF学习,为了实现可扩展可自定义的模型验证 - emf quary 与 OCL
http://blog.csdn.net/javaman_chen/article/details/6020050 //这里的验证强调的是condition的构造,基于查找来判断验证结果.支持OCL也 ...