Digit Generator UVA - 1583
For a positive integer N, the digit-sum of N is defined as the sum of N itself and its digits. When M is the digitsum of N, we call N a generator of M.
For example, the digit-sum of 245 is 256 (= 245 + 2 + 4 + 5). Therefore, 245 is a generator of 256. Not surprisingly, some numbers do not have any generators and some numbers have more than one generator. For example, the generators of 216 are 198 and 207.
You are to write a program to find the smallest generator of the given integer.
Input
Your program is to read from standard input. The input consists of T test cases. The number of test cases T is given in the first line of the input. Each test case takes one line containing an integer N, 1 ≤ N ≤ 100, 000.
Output
Your program is to write to standard output. Print exactly one line for each test case. The line is to contain a generator of N for each test case. If N has multiple generators, print the smallest. If N does not have any generators, print ‘0’.
Sample Input
3
216
121
2005
Sample Output
198
0
1979
HINT
题目的意思很明显,要求满足256 (= 245 + 2 + 4 + 5)形式的整数。一个n位整数假设每一位都是9,那么要求的数里面可能的最小的数就是N-9*n;(其中N是给定的数字)。
Accepted
#include<stdio.h>
int min(int t) //求出给定数字的位数
{ //也可以用循环来求出
if(t<10)return 1;
if(t<100)return 2;
if(t<1000)return 3;
if(t<10000)return 4;
if(t<100000)return 5;
if(t<1000000)return 6;
}
int mm(int t) //求出每一位数字的和
{
int k=0;
while(t)
{
k+=t%10;
t/=10;
}
return k;
}
int main()
{
int sum;
scanf("%d",&sum);
while(sum--)
{
int flag=0;
int t;
scanf("%d",&t);
int k=min(t);
int minst=t-k*9;
minst=minst>0?minst:1;
for(minst;minst<t;minst++)
{
if((minst+mm(minst))==t)
{
printf("%d\n",minst);
continue;
}
}
printf("0\n");
}
}
Digit Generator UVA - 1583的更多相关文章
- UVa 1583 Digit Generator --- 水题+打表
UVa 1583 题目大意:如果x加上x的各个数字之和得到y,那么称x是y的生成元. 给定数字n,求它的最小生成元 解题思路:可以利用打表的方法,提前计算出以i为生成元的数,设为d,并保存在a[d]中 ...
- Digit Generator(水)
题目链接:http://acm.tju.edu.cn/toj/showp2502.html2502. Digit Generator Time Limit: 1.0 Seconds Memor ...
- [C++]最小生成元 (Digit Generator, ACM/ICPC Seoul 2005, UVa1583)
Question 例题3-5 最小生成元 (Digit Generator, ACM/ICPC Seoul 2005, UVa1583) 如果x+x的各个数字之和得到y,就是说x是y的生成元.给出n( ...
- 【UVA 1583】Digit Generator
题 题意 a加上 a的各位数=b,则b是a的digitSum,a是b的generator,现在给你digitSum,让你求它的最小的generator. 分析 一种方法是: 预处理打表,也就是把1到1 ...
- UVa 1583 Digit Generator(数学)
题意 假设a加上a全部数位上的数等于b时 a称为b的generator 求给定数的最小generator 给的数n是小于100,000的 考虑到全部数位和最大的数99,999的数位和也才45 ...
- 生成元(Digit Generator ,ACM/ICPC Seoul 2005 ,UVa 1583)
生成元:如果 x 加上 x 各个数字之和得到y,则说x是y的生成元. n(1<=n<=100000),求最小生成元,无解输出0. 例如:n=216 , 解是:198 198+1+9+8=2 ...
- UVa 1583 - Digit Generator
A+A的每一位的数字的和=B 问你每一个B对应 的最小的A 是多少 不然输出0: #include <cstdio> #include <iostream> #include ...
- 生成元(Digit Generator,ACM/ICPC Seoul 2005,UVa 1583)
#include<cstdio>#include<cstdlib>#include<cstring>using namespace std;int t, n, a, ...
- UVa 1583 - Digit Generator 解题报告 - C语言
1.题目大意 如果a加上a的各个数字之和得到b,则说a是b的生成元.给出n其中$1\le n\le 100000$,求其最小生成元,若没有解则输出0. 2.思路 使用打表的方法打出各个数字a对应的b, ...
随机推荐
- winform捕捉全局异常
/// <summary> /// 应用程序的主入口点. /// </summary> [STAThread] static void Main() { try { //设置应 ...
- oracle数据库date类型和mysql数据库datetime类型匹配
oracle数据库有date类型,但是没有datetime类型 mysql数据库既有date类型也有datetime类型. Oracle数据库的date类型和mysql的date类型是不一样的,Ora ...
- docker mysql数据备份xtrabackup
一.概述 线上有一个mysql,是在docker里面运行的. 关于docker封装mysql镜像,请参考链接:https://www.cnblogs.com/xiao987334176/p/11984 ...
- Python插入排序
升序 import random l = [] for i in range(8): l.append(random.randint(0,9)) print(l) for cur in range(1 ...
- CentOS6.4 Install oh-my-zsh
先安装zsh yum -y install zsh # 查看是否安装完成 cat /etc/shells /bin/sh /bin/bash /sbin/nologin /bin/dash /bin/ ...
- Linux基本命令——系统管理和磁盘管理
转: Linux基本命令--系统管理和磁盘管理 Linux命令--系统管理和磁盘管理 一.系统管理 1.1 时间相关指令 <1> 查看当前日历: cal <2> 显示或设置时间 ...
- 《C++ Primer》笔记 第1章 开始
输出运算符<< 的计算结果就是其左侧运算对象 std::endl 结束当前行,并将与设备关联的缓冲区中的内容刷到设备中. 程序员常常在调试时添加打印语句.这类语句应该保证"一直& ...
- Java 集合框架 04
集合框架·Map 和 Collections集合工具类 Map集合的概述和特点 * A:Map接口概述 * 查看API可知: * 将键映射到值的对象 * 一个映射不能包含重复的键 * 每个键最多只能映 ...
- python学习总结篇(2)——函数
如其他语言一样,除了基本知识外,另外一个重要的板块就是函数了,python中也有函数. 在python中,函数的定义方式为: def 函数名( ): 下面通过几个简单的例子,看看python中的函 ...
- WPF 基础 - 控件与布局
1. 前言 1. 数据驱动 UI WPF 是数据核心.主动的,UI 从属数据并表达数据.是被动的: 不再是 UI 驱动数据,而是数据驱动 UI: 2. 控件的定义 控件.数据内容.行为(控件响应用户操 ...