http://acm.hdu.edu.cn/showproblem.php?pid=4608

听说这个题是比赛的签到题。。。。。。无语。。。。。

问题:给你一个数x,求比它大的数y。
y的要求:
1、y>x
2、y的每一位数相加的和为10的倍数
3、求最小的y

直接模拟,个位数加一然后求各位数总和是否为10的倍数。。。

有的人还考虑了前导零和后导零导致错误。这个题不用考虑那么多。。。坑。。。。

这个题一开始做的好郁闷,没有考虑到
最高位进位,导致我提交全是WA,所以我用的数组存数据,而且是倒着存,即个位在x[0]处,这样存有个好处就是进位时不需要对整个数组
进行移动来给新的最高位空出位置(PS,其实好像也可以用习惯的存储,只要用a[0]来预存一个最高位进位,反正最多只会进位一次。。)

AC代码:
#include<iostream>
#include<cstdio>
#include<cstring> using namespace std; char x[100010],b[100010]; int main()
{
int t,d,i,n,p;
scanf("%d",&t);
while(t--)
{
memset(x,0,sizeof(x));
scanf("%s",&b);
n = strlen(b);
for(i = 0; i < n; i++)
{
x[n-1-i] = b[i];
}
n = strlen(x);
// printf("n:%d\n",n);
p = 1;
while(p%10!=0)
{
p=d=0;
x[0] += 1;
// printf("%c ",x[n-1]);
while(x[0+d] > '9') //处理进位
{
x[0+d] = '0';
d++;
if(d==n) //如果最高位再进位后更新长度并使新的最高位数为1
{
x[0+d] = '1';
n++;
}
else
{
x[0+d] += 1;
}
// printf("d:%d n:%d",d,n);
}
for(i = 0; i < n; i++)
{
p += (int)(x[i]-'0');
}
}
// printf("\n");
for(i = n-1; i >= 0; i--)
{
printf("%c",x[i]);
}
printf("\n");
} return 0;
}

杭电 HDU 4608 I-number的更多相关文章

  1. 杭电 HDU ACM 2795 Billboard(线段树伪装版)

    Billboard Time Limit: 20000/8000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Total ...

  2. 杭电 HDU ACM 1698 Just a Hook(线段树 区间更新 延迟标记)

    欢迎"热爱编程"的高考少年--报考杭州电子科技大学计算机学院 Just a Hook Time Limit: 4000/2000 MS (Java/Others)    Memor ...

  3. 杭电 HDU ACM Milk

    Milk Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) Total Submi ...

  4. 深搜基础题目 杭电 HDU 1241

    HDU 1241 是深搜算法的入门题目,递归实现. 原题目传送门: http://acm.hdu.edu.cn/showproblem.php?pid=1241 代码仅供参考,c++实现: #incl ...

  5. 杭电 HDU 1242 Rescue

    http://acm.hdu.edu.cn/showproblem.php?pid=1242 问题:牢房里有墙(#),警卫(x)和道路( . ),天使被关在牢房里位置为a,你的位置在r处,杀死一个警卫 ...

  6. 杭电 HDU 1031 Design T-Shirt

    Design T-Shirt Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) T ...

  7. 杭电 HDU 2717 Catch That Cow

    Catch That Cow Time Limit: 5000/2000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) T ...

  8. 杭电 HDU 1279 验证角谷猜想

    验证角谷猜想 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) Total Sub ...

  9. ACM 杭电HDU 2084 数塔 [解题报告]

    数塔 Time Limit: 1000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total Submissi ...

随机推荐

  1. Android自定义垂直滚动自动选择日期控件

    ------------------本博客如未明正声明转载,皆为原创,转载请注明出处!------------------ 项目中需要一个日期选择控件,该日期选择控件是垂直滚动,停止滚动时需要校正日期 ...

  2. structs 拦截器

    首先,要跟大家道个歉,前一阵子为给客户个一个DEMO,忙得不可开交,所以很久没有更新Blog.提到这个DEMO我想顺便跟大家分享一下心得——如果大家希望快速开发,一个类似Struts 2这样的简单方便 ...

  3. sql语句收集

    一.基础 1.说明:创建数据库CREATE DATABASE database-name 2.说明:删除数据库drop database dbname3.说明:备份sql server--- 创建 备 ...

  4. C++编程规范和标准总结

    文件名: 每个源代码文件应该有一个包含文件.每个包含文件描述了单个类或者多个类相结合的集合.一般头文件(.h,或.hpp)包含类的定义而不是实例.因此包含文件可以用在多个文件当中,源文件(.c,.或c ...

  5. Android应用程序与SurfaceFlinger服务的连接过程分析

    文章转载至CSDN社区罗升阳的安卓之旅,原文地址:http://blog.csdn.net/luoshengyang/article/details/7857163 前文在描述Android应用程序和 ...

  6. JS判断是不是Decimal类型(正则实现)

    备忘: function isDecimal(item) { var obj = $(item); if (obj.length > 0) { if ($(obj).val() != null ...

  7. JQ 复制节点

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  8. 简单的FTP上传下载(java实现 swing界面)

    /** *阅读前请自己在win7上建立FTP主机 *具体步骤如:http://jingyan.baidu.com/article/574c5219d466c36c8d9dc138.html * 然后将 ...

  9. CAShapeLayer + UIBezierPath

    UIBezierPath: UIBezierPath是在 UIKit 中的一个类,继承于NSObject,可以创建基于矢量的路径.使用此类可以定义常见的圆形.多边形等形状 .我们使用直线.弧(arc) ...

  10. 【.NetRemoting-2】2015.09.17

    [Remoting架构] [1]是.NetFramework的一个重要组成 [2]框架的两个重要特性 [A]基本实现[B]可扩展/可定制 [各个组成部分] [1][客户端,客户端应用程序域] [组成] ...