蓝桥杯-缩位求和

此题的大坑在于他会输入一千行这样不管是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;
  }
相关推荐
熬了夜的程序员2 小时前
【LeetCode】90. 子集 II
数据结构·算法·leetcode·链表·职场和发展·排序算法
熬了夜的程序员2 小时前
【LeetCode】91. 解码方法
算法·leetcode·链表·职场和发展·排序算法
熬了夜的程序员20 小时前
【LeetCode】89. 格雷编码
算法·leetcode·链表·职场和发展·矩阵
程序员杰哥1 天前
Pytest之收集用例规则与运行指定用例
自动化测试·软件测试·python·测试工具·职场和发展·测试用例·pytest
熬了夜的程序员1 天前
【LeetCode】87. 扰乱字符串
算法·leetcode·职场和发展·排序算法
超级大只老咪1 天前
蓝桥杯知识点大纲(JavaC组)
java·算法·蓝桥杯
遇印记1 天前
2026蓝桥杯
职场和发展·蓝桥杯
熬了夜的程序员1 天前
【LeetCode】88. 合并两个有序数组
数据结构·算法·leetcode·职场和发展·深度优先