NUC1313 皇帝的金币
来源:互联网 发布:公司网络不稳定怎么办 编辑:程序博客网 时间:2024/04/25 23:07
皇帝的金币
时间限制: 1000ms 内存限制: 65536KB
问题描述
国王给他忠诚的骑士金币。在他服役的第一天,骑士得到一枚金币。在接下来的两天中(服役的第二天和第三天),骑士得到了两枚金币。在接下来的三天中(服役的第四天,第五天,第六天),骑士得到了三枚金币。在接下来的四天中(服役的第七天,第八天,第九天和第十天),骑士得到了四枚金币。这种模式的支付方式是不确定的:在得到了N枚金币后,这个骑士会在接下来的N+1天中每天得到N+1枚金币,N是任意的正整数。
你编的程序会决定这任意一天付给骑士的金币的数目(从第一天开始)
输入描述
输入最少包含一行,但是不要多于21行。输入的每一行(除去最后一行)包含一个可以进行一次程序运行的数字,是一个确切的整数(在1..10000的范围内)代表了天数。输入的最后是以含0的一行为标志的。
输出描述
对应于每一次程序运行对应一行输出。这一行包含对应于输入行的天数,跟着一个空格和在这些天中支付给骑士金币的总数,从第一天开始。
样例输入
106711151610010000100021220
样例输出
10 306 147 1811 3515 5516 61100 94510000 9428201000 2982021 9122 98
来源
Rocky Mountain 2004
问题分析:
这个题与《UVALive3045 POJ2000 ZOJ2345 Gold Coins》完全相同,代码直接拿过来就可以了。
程序说明:
参见参考链接。
参考链接:UVALive3045 POJ2000 ZOJ2345 Gold Coins
题记:程序写多了,似曾相识的也就多了。
AC的C++程序如下:
/* UVALive3045 POJ2000 ZOJ2345 Gold Coins */ #include <stdio.h> #define MAXN 10000 int ans[MAXN+1] = {0}; void maketable() { int i, j, k; j = 1; /* Ai, S=1,2,2,3,3,3,4,4,4,4,...... */ k = 1; /* 同值计数变量:j值够j个(用k来计数, k=j时)则j增1 */ for (i=1; i<=MAXN; i++){ ans[i] = j + ans[i - 1]; if (k == j){ j++; k = 0; } k++; } } int main(void) { int n; maketable(); while(scanf("%d", &n) != EOF && n != 0) printf("%d %d\n", n, ans[n]); return 0; }
0 0
- NUC1313 皇帝的金币
- 做皇帝的游戏
- 明朝的皇帝们
- 皇帝的旧衣
- 汉朝的皇帝列表
- CodeVS1513 皇帝的烦恼
- 喜欢对联的皇帝朱元璋
- 皇帝的新衣:Node.js
- 皇帝的新衣:Node.js
- 【经典算法】:皇帝的遗产
- 省选专练ZJOI2006皇帝的烦恼
- 金币
- 金币
- 金币
- 金币
- 奇怪的非同寻常的金币
- 海盗分金币的问题
- 海盗分金币的问题
- 51学习库(10)--电机
- getExtension 获取文件名后缀
- 如何在Spring项目中使用Mybatis
- 多媒体开发
- 浅谈慕课网React入门课程笔记(四)
- NUC1313 皇帝的金币
- 由int指令引发的中断(1301)
- 字符串匹配算法综述
- Git基本命令
- django学习8 model类
- 传感器应用开发
- epoll比select和poll高效的原因
- scala实例——三
- HTTP协议