问题描述:如果x加上x的各个数字之和得到y,就说x是y的生成元。给出n(1<=n<=10000),求最小生成元。无解时输出0。例如 n = 216,121,2005 时的解分别为198,0,1979。

简单做法为两种,第一种为直接枚举,第二种为查表。

//查表
#include<stdio.h>
#include<string.h>
#define maxn 10005
int ans[maxn];//数组定义在main之外
int main()
{int n;memset(ans,0,sizeof(ans));//清空数组for(int m = 1 ; m < maxn; m++){int x = m,y = m;while(x > 0){ y += x % 10; x /= 10;}//寻找生成元if(ans[y] == 0 || m < ans[y]) ans[y] = m;//查看是否为最小生成元}scanf("%d",&n);if(ans[n] != 0) printf("%d\n",ans[n]);else printf("0");return 0;
}
//枚举
int main() {int n;scanf("%d", &n);for (int i = 1; i <= n; i++) {if (i / 100 + (i / 10) % 10 + i % 10 + i == n) {printf("%d\n", i);break;}}return 0;
}

寻找生成元问题解决(Digit Generator,ACM/ICPC Seoul 2005, UVa1583)相关推荐

  1. 例题3-5 生成元(Digit Generator, ACM/ICPC Seoul 2005, UVa1583)

    如果x加上x的各个数字之和得到y,就说x是y的生成元.给出n(1≤n≤100000),求最小 生成元.无解输出0.例如,n=216,121,2005时的解分别为198,0,1979. 先附上自己的想法 ...

  2. 《算法竞赛入门经典》 例题3-5 生成元 (Digit Generator, ACM ICPC Seoul 2005,UVa)

    原题及翻译 For a positive integer N , the digit-sum of N is defined as the sum of N itself and its digits ...

  3. 生成元(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 ...

  4. 得分(Score,ACM/ICPC Seoul 2005,UVa1585)

    给出一个由O和X组成的串(长度为1~80),统计得分.每个O的得分为目前连续出现的O的个数,X的得分为0.例如,OOXXOXXOOO的得分为1+2+0+0+1+0+0+1+2+3. 输入样例 5 OO ...

  5. 《算法竞赛入门经典》习题3-1 得分(Score,ACM、ICPC Seoul 2005,UVa1585)

    原题及翻译 There is an objective test result such as "OOXXOXXOOO". 有一个客观的测试结果,比如"ooxxoxoo& ...

  6. 习题3-3 数数字(Digit Counting , ACM/ICPC Danang 2007, UVa1225)

    前n(n≤10000)个整数顺次写在一起:123456789101112-数一数0-9各出现多少次 (输出10个整数,分别是0,1,-,9出现的次数). 原题链接:https://vjudge.net ...

  7. 例题3-6 环状序列(Circular Sequence, ACM/ICPC Seoul 2004, UVa1584)

    长度为n的环状串有n种表示法,分别为从某 个位置开始顺时针得到.例如,图3-4的环状串 有10种表示: CGAGTCAGCT,GAGTCAGCTC,AGTCAGCTCG等.在这些表示法中,字典序最小的 ...

  8. 3-7 DNA序列(DNA Consensus String, ACM/ICPC Seoul 2006, UVa1368)

    输入m个长度均为n的DNA序列,求一个DNA序列,到所有序列的总Hamming距离尽量 小. 两个等长字符串的Hamming距离等于字符不同的位置个数,例如,ACGT和GCGA的 Hamming距离为 ...

  9. 环状序列(Circular Sequence,ACM/ICPC Seoul 2004,UVa1584)

    长度为n的环状串有n种表示法,分别为某个位置开始顺时针得到.CGAGTCAGCT,GAGTCAGCTC,AGTCAGCTCG等.在这些表示法中,字典序最小的称为"最小表示".输入一 ...

最新文章

  1. pandas使用nsmallest函数返回特定数据列中前N个最小值(搜寻最小的n个元素)、pandas使用nsmallest函数返回特定数据列中前N个最小值所对应的数据行
  2. ks检验正态分布结果_【学习】AD, RJ和KS哪种正态性检验是最好的?
  3. 如何让 zend studio 10 识别 Phalcon语法并且进行语法提示
  4. 二分查找离左边元素最近的(可以等于)
  5. Python 列表 min() 方法
  6. Delphi 解压缩 ZipForge
  7. 基于OSSIM平台下华为交换机日志收集插件的开发
  8. python 客户端_Python客户端
  9. SAP MM批次管理(1)物料与批次
  10. Download ebook from Syngress Publishing
  11. niceScroll滚动条出现在div的左侧(PS:原本应该出现在div右侧)
  12. R语言混合线性模型包代码演示
  13. 浪潮服务器开启虚拟化功能,浪潮服务器-虚拟化解决方案.ppt
  14. 印象码——中国第一款视频广告验证码
  15. 分布式系列_MQ_01_MQ简介
  16. 堆排序和快排与归并排序
  17. (用函数解决)Python报数游戏,输入有n个人按顺序编号,从第一个人报数,输入报数k,从1到k,报到k的退出游戏,从下一个人继续游戏,并求最后剩下的人编号是几号。
  18. Subresource Integrity 介绍
  19. 测绘——通过手机和smart3D创建三维模型
  20. 3个免费、无损压缩图片的工具,一键解决图片过大问题

热门文章

  1. 代码随想录算法训练营第一天| 704. 二分查找、27. 移除元素。
  2. 时间序列分解论文STL: A Seasonal-Trend Decomposition Procedure Based on Loess
  3. 机器学习-降维算法(MDS算法)
  4. 帮我下载 MySQL tokudb 安装包
  5. 主R 主A 什么意思
  6. Kafka消费者与消费组
  7. 使用ARM-LPC3131上的nandflash实现U盘模式心得(一)
  8. MATLAB调用LINGO程序并交换数据
  9. 物种组成相对丰度(百分比)堆叠柱状图
  10. 蓝桥杯每日一题(既约分数)