2018年全国多校算法寒假训练营练习比赛(第五场)F-The Biggest Water Problem
2018-02-25 18:37
232 查看
链接:https://www.nowcoder.com/acm/contest/77/F
来源:牛客网
时间限制:C/C++ 1秒,其他语言2秒
空间限制:C/C++ 32768K,其他语言65536K
64bit IO Format: %lld
题目描述
给你一个数,让他进行巴啦啦能量,沙鲁沙鲁,小魔仙大变身,如果进行变身的数不满足条件的话,就继续让他变身。。。直到满足条件为止。
巴啦啦能量,沙鲁沙鲁,小魔仙大变身:对于一个数,把他所有位上的数字进行加和,得到新的数。
如果这个数字是个位数的话,那么他就满足条件。
输入描述:
给一个整数数字n(1<=n<=1e9)。
输出描述:
输出由n经过操作满足条件的数
示例1
输入
12
输出
3
说明
12 -> 1 + 2 = 3
示例2
输入
38
输出
2
说明
38 -> 3 + 8 = 11 -> 1 + 1 = 2
题意:循环,直至数字的每一位之和为个位数为止。
思路:将sum化成用字符数组存储每一位的值(字符数组里是倒着存的,不过对这题没什么影响)。
结束之后一想,其实根本用不上字符数组,可以省去存下来的这一步,可以直接加。
代码:#include<iostream>
#include<cstdio>
#include<cstring>
#include<algorithm>
#define IO ios::sync_with_stdio(false);cin.tie(0);
#define INF 0x3f3f3f3f
using namespace std;
char a[10010];
int main()
{
while(cin >> a){
int len = strlen(a);
int sum = 0;
for(int i = 0; i < len; i++){
sum += a[i]-'0';
}
while(sum > 9){
int r = sum, cnt=0;
while(r){
a[cnt++] = r%10;
r = r/10;
}
sum = 0;
for(int i = 0; i < cnt; i++){
sum += a[i];
}
}
cout << sum << endl;
}
return 0;
}
来源:牛客网
时间限制:C/C++ 1秒,其他语言2秒
空间限制:C/C++ 32768K,其他语言65536K
64bit IO Format: %lld
题目描述
给你一个数,让他进行巴啦啦能量,沙鲁沙鲁,小魔仙大变身,如果进行变身的数不满足条件的话,就继续让他变身。。。直到满足条件为止。
巴啦啦能量,沙鲁沙鲁,小魔仙大变身:对于一个数,把他所有位上的数字进行加和,得到新的数。
如果这个数字是个位数的话,那么他就满足条件。
输入描述:
给一个整数数字n(1<=n<=1e9)。
输出描述:
输出由n经过操作满足条件的数
示例1
输入
12
输出
3
说明
12 -> 1 + 2 = 3
示例2
输入
38
输出
2
说明
38 -> 3 + 8 = 11 -> 1 + 1 = 2
题意:循环,直至数字的每一位之和为个位数为止。
思路:将sum化成用字符数组存储每一位的值(字符数组里是倒着存的,不过对这题没什么影响)。
结束之后一想,其实根本用不上字符数组,可以省去存下来的这一步,可以直接加。
代码:#include<iostream>
#include<cstdio>
#include<cstring>
#include<algorithm>
#define IO ios::sync_with_stdio(false);cin.tie(0);
#define INF 0x3f3f3f3f
using namespace std;
char a[10010];
int main()
{
while(cin >> a){
int len = strlen(a);
int sum = 0;
for(int i = 0; i < len; i++){
sum += a[i]-'0';
}
while(sum > 9){
int r = sum, cnt=0;
while(r){
a[cnt++] = r%10;
r = r/10;
}
sum = 0;
for(int i = 0; i < cnt; i++){
sum += a[i];
}
}
cout << sum << endl;
}
return 0;
}
相关文章推荐
- 2018年全国多校算法寒假训练营练习比赛(第五场)题解 F The Biggest Water Problem
- 2018年全国多校算法寒假训练营练习比赛(第五场)The Biggest Water Problem
- 2018年全国多校算法寒假训练营练习比赛(第五场)B Big Water Problem
- 2018年全国多校算法寒假训练营练习比赛(第五场) Big Water Problem(树状数组)
- 牛客网NowCoder 2018年全国多校算法寒假训练营练习比赛(第五场)A.逆序数 B.Big Water Problem(线段树-区间查询求和和单点更新) F.The Biggest Water Problem H.Tree Recovery(线段树-区间查询求和和区间更新)
- 2018年全国多校算法寒假训练营练习比赛(第五场)G-送分啦-QAQ(博弈)
- 2018年全国多校算法寒假训练营练习比赛(第五场) G 送分啦-QAQ HDU 2516 斐波拉底博弈
- 牛客网 2018年全国多校算法寒假训练营练习比赛(第五场) 题解
- 2018年全国多校算法寒假训练营练习比赛(第五场)A 逆序数
- 2018年全国多校算法寒假训练营练习比赛(第五场) G 送分啦-QAQ HDU 2516 斐波拉底博弈
- 2018年全国多校算法寒假训练营练习比赛(第五场)题解
- 2018年全国多校算法寒假训练营练习比赛(第五场)比赛题目题解
- 2018年全国多校算法寒假训练营练习比赛(第五场) G 送分啦-QAQ HDU 2516 斐波拉底博弈
- 2018年全国多校算法寒假训练营练习比赛(第五场) C 字符串的问题(substr,find的用法)
- B Big Water Problem 2018年全国多校算法寒假训练营练习比赛(第五场)
- 2018年全国多校算法寒假训练营练习比赛(第五场) G 送分啦-QAQ HDU 2516 斐波拉底博弈
- 2018年全国多校算法寒假训练营练习比赛(第五场)D集合问题详解
- 2018年全国多校算法寒假训练营练习比赛(第一场) Problem:H
- 2018年全国多校算法寒假训练营练习比赛(第五场)B(简单线段树)
- 2018年全国多校算法寒假训练营练习比赛(第五场) A 逆序数 树状数组 离散化