ZOJ 3336 Friend Number II
http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemId=3780
题目大意:
给你一个正整数x,要求每个数字上的总和和x相同且比x大的最小整数。
如x=12 答案为21 x=10 答案为100
思路:
因为要比x大的最小,我们很自然的想到个位-1十位+1不就可以了。但是要注意如果是0的话,0-1变为9那么是不行的!而9+1的话变为0也是不行的。
最个位开始查找,找第一个不为0的数-1(不为0的下标为not_zero),在not_zero往高位找到第一个不为9的个数+1,(这样保证了比x大)然后在9+1的这里往后排个序保证最小。
为什么要排序?如x=520那么按照上面的就会变为610 而答案应该为601
#include<cstdio>
#include<cstring>
#include<algorithm>
using namespace std;
const int MAXN=1024;
char s[MAXN];
int main()
{
int T;
scanf("%d",&T);
while(T--)
{
s[0]='0';
scanf("%s",s+1);
int len=strlen(s);
int not_zero=len-1;
while(s[not_zero]=='0')
not_zero--;
s[not_zero]--; int not_nine=not_zero-1;
while(s[not_nine]=='9')
not_nine--;
s[not_nine]++; sort(s+not_nine+1,s+len); if(s[0]=='0')
printf("%s\n",s+1);
else
printf("%s\n",s); }
return 0;
}
ZOJ 3336 Friend Number II的更多相关文章
- 【leetcode】Single Number && Single Number II(ORZ 位运算)
		题目描述: Single Number Given an array of integers, every element appears twice except for one. Find tha ... 
- 【LeetCode】264. Ugly Number II
		Ugly Number II Write a program to find the n-th ugly number. Ugly numbers are positive numbers whose ... 
- 【题解】【位操作】【Leetcode】Single Number II
		Given an array of integers, every element appears three times except for one. Find that single one. ... 
- LightOJ 1245 Harmonic Number (II)(找规律)
		http://lightoj.com/volume_showproblem.php?problem=1245 G - Harmonic Number (II) Time Limit:3000MS ... 
- [OJ] Single Number II
		LintCode 83. Single Number II (Medium) LeetCode 137. Single Number II (Medium) 以下算法的复杂度都是: 时间复杂度: O( ... 
- [Locked] Strobogrammatic Number & Strobogrammatic Number II & Strobogrammatic Number III
		Strobogrammatic Number A strobogrammatic number is a number that looks the same when rotated 180 deg ... 
- Single Number,Single Number II
		Single Number Total Accepted: 103745 Total Submissions: 218647 Difficulty: Medium Given an array of ... 
- Ugly Number,Ugly Number II,Super Ugly Number
		一.Ugly Number Write a program to check whether a given number is an ugly number. Ugly numbers are po ... 
- 1245 - Harmonic Number (II)(规律题)
		1245 - Harmonic Number (II) PDF (English) Statistics Forum Time Limit: 3 second(s) Memory Limit: 3 ... 
随机推荐
- 手机浏览器,微信浏览器对background-color不显示的问题
			PC上的浏览器可以正常显示,但是到了手机上就不显示了,古怪的问题花了我一晚上都没解决. 今天突然想到会不会是某些特立独行的了浏览器为了彰显个性,采用不同别人的解析方式呢? 我的原来CSS是这么写的: ... 
- Java7与G1
			Lucene 4.8開始不支持java6了,所以在下次版本号升级之前我们要先升级至java7. 我使用1/3的全量索引(7.3G).进行測试,20并发,40万请求: sun jdk 1.6.0_26 ... 
- 软件project经验总结系列之三 - 计划阶段控制
			本文为软件project经验总结系列文章的第三篇.按照总论文章所设立的范围划分,本阶段重点讲述计划阶段的控制过程以及控制思路,笔者所站在的角度是乙方角度来进行表述整个阶段的推动过程,但对于甲方公司其基 ... 
- Cannot use isset() on the result of an expression (you can use "null !== expression" instead)
			if (isset($array[2])){ 抛出错误 Cannot use isset() on the result of an expression (you can use "nu ... 
- Android学习笔记进阶14之像素操作
			在我们玩的游戏中我们会经常见到一些图像的特效,比如半透明等效果.要实现这种半透明效果其实并不难,需要我们懂得图像像素的操作. 不要怕,其实在Android中Bitmap为我们提供了操作像素的基本方法. ... 
- 淺談Unity 5.4新功能:Light Probe Proxy Volume
			作者:CHRISTOPHER POPE 原文連結 Unity 5.4進入到Beta的階段.当中一個特別的功能是光照探頭代理Light Probe Proxy Volume(LPPV).本篇會向大家介紹 ... 
- HDU 2068 RPG的错排(错排公式 + 具体解释)
			RPG的错排 Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Total Sub ... 
- 用c实现的各种排序的方法
			#include <stdio.h> void swap(int *a, int *b); void bubble_sort(int a[], int n); void select_so ... 
- JS搜索菜单实现
			1 <!--菜单搜索功能--> 2 <!--先写静态页面--> 3 <!DOCTYPE html> 4 <html> 5 <head> 6 ... 
- 大家好,我是FansUnion,雷文
			友情提示 以下是我在CSDN Code讨论组的自我介绍. 很多CSDN网友,总是重复地问我一些比较常见的问题. 我已经开始机械性地回答网友的问题了. 自我介绍 我的CSDN等媒体的ID,大多带有Fan ... 
