蓝桥杯-缩位求和

此题的大坑在于他会输入一千行这样不管是int 还是long long 都会溢出,之前一直以下面代码运行难怪一个也过不了

复制代码
#include <iostream>
using namespace std;
int func(int n)
{
	long long sum=0; 
	while(n)
	{
		sum+=n%10;
		n/=10;//d得到每一位的数 
	}
	return sum;
}
int main()
{
    long long  n;
    cin>>n;
    long long  count=func(n);
    while(count/10)
    {
      count=func(count);	
	}
    cout<<count;
  }

最终修改代码如下:(令我奇怪的是蓝桥杯不能用gets ,我就只能用字符串输入了)

复制代码
#include <iostream>
using namespace std;
int func(int n)
{
	long long sum=0; 
	while(n)
	{
		sum+=n%10;
		n/=10;//d得到每一位的数 
	}
	return sum;
}
int main()
{
    string num;
    getline(cin,num);
    int a[1005];
    int sum=0;
    for(int i=0;num[i];i++)//一直加,将字符转为数字 
    {
    	a[i]=num[i]-'0';
		sum+=a[i];//将各个位上的数字之和加起来 
	}
    long long  count=sum;
    while(count/10)
    {
      count=func(count);	
	}
    cout<<count;
  }
相关推荐
梭七y2 小时前
【力扣hot100题】(099)寻找重复数
算法·leetcode·职场和发展
汇太浪3 小时前
第十六届蓝桥杯大赛软件赛省赛 C++ 大学 B 组 部分题解
c++·蓝桥杯
wuqingshun3141594 小时前
蓝桥杯 1.路径之谜
c++·算法·职场和发展·蓝桥杯·深度优先
一叶祇秋5 小时前
Leetcode - 周赛445
算法·leetcode·职场和发展
guitarCC11 小时前
【裁员感想】
职场和发展
ChengZUOZZZ11 小时前
蓝桥杯题目:二维前缀和
java·算法·蓝桥杯
wuqingshun31415921 小时前
蓝桥杯 9. 九宫幻方
数据结构·c++·算法·职场和发展·蓝桥杯·深度优先
云格~21 小时前
L1-5 吉老师的回归
开发语言·c++·人工智能·算法·职场和发展·数据挖掘·回归
杰瑞学AI1 天前
LeetCode详解之如何一步步优化到最佳解法:27. 移除元素
数据结构·python·算法·leetcode·面试·职场和发展
ChoSeitaku1 天前
NO.95十六届蓝桥杯备战|图论基础-单源最短路|负环|BF判断负环|SPFA判断负环|邮递员送信|采购特价产品|拉近距离|最短路计数(C++)
c++·蓝桥杯·图论