hdu 5055 Bob and math problem
先把各个数字又大到小排列,如果没有前导零并且为奇数,则直接输出。如果有前导零,则输出-1。此外,如果尾数为偶数,则从后向前找到第一个奇数,并把其后面的数一次向前移动,并把该奇数放到尾部。
值得注意的是当输入为960时,通过这种方法会得到具有前导零的数字。因此最后需要判断进行移动后,首位是否为零。
代码如下:
#define MAXN 101
#include <stdlib.h>
#include <iostream>
#include <cstdio>
#include <algorithm>
using namespace std;
int arr[MAXN];
int N;
bool comp(int a, int b)
{
return a>b;
} void p(int *a)
{
for( int i = ; i < N ; i++ )
{
printf("%d", a[i]);
}
printf("\n");
}
void solve()
{
sort(arr, arr+N, comp);
if( arr[N-] & && arr[] != )
{
p(arr);
}
else if( arr[] == )
{
printf("%d\n", -);
}
else
{
for( int i = N- ; i >= ; i-- )
{
if( arr[i] & )
{
int tmp = arr[i];
for( int j = i+ ; j <= N- ; j++ )
{
arr[j-] = arr[j];
}
arr[N-] = tmp;
break;
}
}
if( arr[N-] & && arr[] != )
{
p(arr);
}
else
{
printf("%d\n", -);
}
}
}
int main(int argc, char *argv[])
{
while( scanf("%d", &N ) != EOF)
{
for( int i = ; i < N ; i++ )
{
scanf("%d", &arr[i]);
}
solve();
}
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(简单贪心)
		
http://acm.hdu.edu.cn/showproblem.php?pid=5055 题目大意: 给你N位数,每位数是0~9之间.你把这N位数构成一个整数. 要求: 1.必须是奇数 2.整数的 ...
 - hdu 5055 Bob and math problem (很简单贪心)
		
给N个数字(0-9),让你组成一个数. 要求:1.这个数是奇数 2.这个数没有前导0 问这个数最大是多少. 思路&解法: N个数字从大到小排序,将最小的奇数与最后一位交换,把剩下前N-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 ...
 - 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 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 ...
 - HDU 1757 A Simple Math Problem (矩阵快速幂)
		
题目 A Simple Math Problem 解析 矩阵快速幂模板题 构造矩阵 \[\begin{bmatrix}a_0&a_1&a_2&a_3&a_4&a ...
 - HDU 1757 A Simple Math Problem(矩阵)
		
A Simple Math Problem [题目链接]A Simple Math Problem [题目类型]矩阵快速幂 &题解: 这是一个模板题,也算是入门了吧. 推荐一个博客:点这里 跟 ...
 
随机推荐
- cocos2d-x 聊天输入框实现
			
转自:http://bbs.9ria.com/thread-216948-1-10.html 聊天输入框 (单行输入框 ,多行可自己扩展) 实现功能: 1.普通输入 2.设置输入框显示最大宽度(PT ...
 - 【转】Android studio 导入github工程
			
http://blog.csdn.net/feixiaku/article/details/45155587/ 从github下载两个开源项目: PagerSlidingTabStrip | ...
 - ILSpy反编译工具的使用
			
以前一直使用reflector来查看.net类库的一些信息,不过,自2011年2月份开始,reflector就开始转向收费软件了,所以爱好免费软件的开发者们转而开发自己的反编译软件.于是ILspy就因 ...
 - PCL入门—点云操作 定义变量 显示点云 存储
			
// 定义相关变量 pcl::PointCloud<pcl::PointXYZ>::Ptr cloud_ptr (new pcl::PointCloud<pcl::PointXYZ& ...
 - SpiderMonkey-让你的C++程序支持JavaScript脚本
			
译序 有些网友对为什么D2JSP能执行JavaScript脚本程序感到奇怪,因此我翻译了这篇文章,原文在这里.这篇教程手把手教你怎样利用SpiderMonkey创建一个能执行JavaScript脚本的 ...
 - careercup-中等难度 17.12
			
17.12 设计一个算法,找出数组中两数之和为指定值的所有整数对. 解答 时间复杂度O(n)的解法 我们可以用一个哈希表或数组或bitmap(后两者要求数组中的整数非负)来保存sum-x的值, 这样我 ...
 - careercup-中等难题 17.2
			
17.2 设计一个算法,判断玩家是否赢了井字游戏. 解法: 假设这个检查某人是否赢得了井字游戏的函数为HasWon,那么我们第一步要向面试官确认, 这个函数是只调用一次,还是要多次频繁调用.如果是多次 ...
 - Linux服务器的常用备份方法
			
系统备份是系统管理工作中十分重要的一个环切,本文详细介绍了各种Linux系统的备份方法,相信对大家的日常管理工作有所帮助. 备份是一项重要的工作,但是很多人没有去做.一旦由于使用不当造成数据丢失,备份 ...
 - Distributed locks with Redis--官方
			
原文:http://redis.io/topics/distlock Distributed locks with Redis Distributed locks are a very useful ...
 - Migration from Zend Framework v2 to v3
			
Migration from Zend Framework v2 to v3 Zend Framework v2 to v3 has been intended as an incremental u ...