LOGO
首页 网站广场 站长动态 活跃度榜 审核查询 逛逛好站 留言交流 提交申请 关于本站

站长动态

站长动态所展示的是已加入好站网成员站长文章
共同步 2427 篇博文
(每2小时更新一次)
Debug
入驻第1年
蓝桥杯 基础练习 分解质因数
问题描述  求出区间[a,b]中所有整数的质因数分解。 输入格式 输入两个整数a,b。 输出格式  每行输出一个数的分解,形如k=a1*a2*a3…(a1<=a2<=a3…,k也是从小到大的)(具体可看样例) 样例输入 3 10 样例输出 1 2 3 4 5 6 7 8 3=3 4=2*2 5=5 6=2*3 7=7 8=2*2*2 9=3*3 10=2*5 提示 先筛出所有素数,然后再分解。 数据规模和约定   2<=a<=b<=10000 C++算法 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 #include<stdio.h> #include<iostream> #include<string.h> #include<string> #include <ctype.h> #include <math.h> using namespace std; int factor(int n) { int i, j = (int)sqrt(n); if (n % 2 == 0) return 2; for (i = 3; i <= j; i++) if (n % i == 0) return i; return n; } int main() { int i, j, k, m, n; scanf("%d%d", &m, &n); for (i = m; i <= n; i++) { j = factor(i); k = i / j; printf("%d=%d", i, j); while (k > 1) { j = factor(k); k /= j; printf("*%d", j); } printf("\n"); } return 0; } 关注微信公众号,第一时间获取最新内容,让我们一起变得更强!Debug客栈:订阅本站· 文章归档· 我的项目· 友情链接· 我的使用· 飞湾计划· 摄影展集· 我的主页
Debug
入驻第1年
蓝桥杯 基础练习 字符串对比
问题描述   给定两个仅由大写字母或小写字母组成的字符串(长度介于1到10之间),它们之间的关系是以下4中情况之一: 两个字符串长度不等。比如 Beijing 和 Hebei 两个字符串不仅长度相等,而且相应位置上的字符完全一致(区分大小写),比如 Beijing 和 Beijing 两个字符串长度相等,相应位置上的字符仅在不区分大小写的前提下才能达到完全一致(也就是说,它并不满足情况2)。比如 beijing 和 BEIjing 两个字符串长度相等,但是即使是不区分大小写也不能使这两个字符串一致。比如 Beijing 和 Nanjing 编程判断输入的两个字符串之间的关系属于这四类中的哪一类,给出所属的类的编号。 输入格式   包括两行,每行都是一个字符串 输出格式 仅有一个数字,表明这两个字符串的关系编号 样例输入 BEIjing beiJing 样例输出 3 C++算法 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 #include<iostream> #include<cstdio> #include<cstring> #include<cmath> using namespace std; char A[15],B[15]; int main() { scanf("%s",A); scanf("%s",B); int a=strlen(A); int b=strlen(B); int count=0; if(a!=b) //长度不等 { printf("1\n"); return 0; } //长度相等 else { for(int i=0;i<a;i++) { if((A[i]!=B[i])) { if(abs(A[i]-B[i])!=32) { printf("4\n"); return 0; } else { ++count; continue; } } } if((count==0)) printf("2\n"); else printf("3\n"); } return 0; } 关注微信公众号,第一时间获取最新内容,让我们一起变得更强!Debug客栈:订阅本站· 文章归档· 我的项目· 友情链接· 我的使用· 飞湾计划· 摄影展集· 我的主页
Debug
入驻第1年
蓝桥杯 基础练习 时间转换
问题描述   给定一个以秒为单位的时间t,要求用“::”的格式来表示这个时间。表示时间,表示分钟,而表示秒,它们都是整数且没有前导的“0”。 例如,若t=0,则应输出是“0:0:0”;若t=3661,则输出“1:1:1”。 输入格式   输入只有一行,是一个整数t(0<=t<=86399)。 输出格式   输出只有一行,是以“::”的格式所表示的时间,不包括引号。 样例输入0 样例输出0:0:0 样例输入5436 样例输出1:30:36 C++算法 1 2 3 4 5 6 7 8 9 10 11 12 #include <iostream> using namespace std; int main() { int n,H,M,S,t; cin>>n; H=n/3600; t=n%3600; M=t/60; S=t%60; cout<<H<<":"<<M<<":"<<S; } 关注微信公众号,第一时间获取最新内容,让我们一起变得更强!Debug客栈:订阅本站· 文章归档· 我的项目· 友情链接· 我的使用· 飞湾计划· 摄影展集· 我的主页
Debug
入驻第1年
蓝桥杯 基础练习 数列排序
问题描述   给定一个长度为n的数列,将这个数列按从小到大的顺序排列。1<=n<=200 输入格式   第一行为一个整数n。 第二行包含n个整数,为待排序的数,每个整数的绝对值小于10000。 输出格式   输出一行,按从小到大的顺序输出排序后的数列。 样例输入 58 3 6 4 9 样例输出 3 4 6 8 9 C++算法 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 #include<iostream> #include<algorithm> using namespace std; int cmp(int a,int b) { return a<b; } int main() { int n; while(cin>>n) { int a[205]; for(int i=0;i<n;i++) { cin>>a[i]; } sort(a,a+n,cmp); cout<<a[0]; for(int i=1;i<n;i++) { cout<<' '<<a[i]; } cout<<endl; } return 0; } 关注微信公众号,第一时间获取最新内容,让我们一起变得更强!Debug客栈:订阅本站· 文章归档· 我的项目· 友情链接· 我的使用· 飞湾计划· 摄影展集· 我的主页
Debug
入驻第1年
蓝桥杯 基础练习 十六进制转八进制
问题描述 给定n个十六进制正整数,输出它们对应的八进制数。 输入格式 输入的第一行为一个正整数n (1<=n<=10)。   接下来n行,每行一个由09、大写字母AF组成的字符串,表示要转换的十六进制正整数,每个十六进制数长度不超过100000。 输出格式 输出n行,每行为输入对应的八进制正整数。 【注意】   输入的十六进制数不会有前导0,比如012A。   输出的八进制数也不能有前导0。 样例输入   2   39   123ABC 样例输出   71   4435274 【提示】   先将十六进制数转换成某进制数,再由某进制数转换成八进制。 C++算法 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 #include <iostream> #include <stdio.h> #include <string.h> #include <STDLIB.H> /* run this program using the console pauser or add your own getch, system("pause") or input loop */ int GetI(char c) { return c>>4&1?c&15:(c&15)+9; } int main(int argc, char *argv[]) { char arr[200001] = {'\0'}; char brr[400001] = {'\0'}; int n = 0; int i = 0; scanf("%d",&n); for(i = 0;i < n;i++) { scanf("%s",arr); int m[3] = {1,16,256}; int len = strlen(arr); int j = len-1; int a,b,c; a = b = c = 0; int k = 0,l = 0; int count = 0; while(j>-1) { a += (arr[j]>>4&1?arr[j]&15:(arr[j]&15)+9)*m[k]; //个位 if(k==2||j==0) { while(a) { brr[l++] = ((a&7)|48); a = a>>3; count++; } while(j!=0&&count<4) { brr[l++] = '0'; count++; } count = 0; } k = (k+1)%3; j--; } strrev(brr); printf("%s\n",brr); memset(arr,'\0',(sizeof(char)*200001)); memset(brr,'\0',(sizeof(char)*400001)); } return 0; } 关注微信公众号,第一时间获取最新内容,让我们一起变得更强!Debug客栈:订阅本站· 文章归档· 我的项目· 友情链接· 我的使用· 飞湾计划· 摄影展集· 我的主页
Debug
入驻第1年
蓝桥杯 基础练习 十六进制转十进制
问题描述 从键盘输入一个不超过8位的正的十六进制数字符串,将它转换为正的十进制数后输出。 注:十六进制数中的10~15分别用大写的英文字母A、B、C、D、E、F表示。 样例输入 FFFF 样例输出 65535 C++算法 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 #include<iostream> #include<string> using namespace std; int main() { string s; while(cin>>s) { int leth=s.length(); long long sum=0; for(int i=0;i<leth;i++) { if(s[i]>='A'&&s[i]<='F') { sum=sum*16+s[i]-'A'+10; // cout<<sum<<endl; } else { sum=sum*16+s[i]-'0'; //cout<<sum<<endl; } } cout<<sum<<endl; } return 0; } 关注微信公众号,第一时间获取最新内容,让我们一起变得更强!Debug客栈:订阅本站· 文章归档· 我的项目· 友情链接· 我的使用· 飞湾计划· 摄影展集· 我的主页
Debug
入驻第1年
蓝桥杯 基础练习 十进制转十六进制
问题描述   十六进制数是在程序设计时经常要使用到的一种整数的表示方式。它有0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F共16个符号,分别表示十进制数的0至15。十六进制的计数方法是满16进1,所以十进制数16在十六进制中是10,而十进制的17在十六进制中是11,以此类推,十进制的30在十六进制中是1E。   给出一个非负整数,将它表示成十六进制的形式。 输入格式   输入包含一个非负整数a,表示要转换的数。0<=a<=2147483647 输出格式   输出这个整数的16进制表示 样例输入30 样例输出1E C++算法 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 #include<iostream> #include<cstdio> using namespace std; int main() { int n; char s[100000]; while(cin>>n) { int k=0; if(n==0) { cout<<0; } else { while(n!=0) { if(n%16>=10) { s[k++]='A'+n%16-10; } else { s[k++]='0'+n%16; } n=n/16; } for(int i=k-1;i>=0;i--) { cout<<s[i]; } } cout<<endl; } return 0; } 关注微信公众号,第一时间获取最新内容,让我们一起变得更强!Debug客栈:订阅本站· 文章归档· 我的项目· 友情链接· 我的使用· 飞湾计划· 摄影展集· 我的主页
Debug
入驻第1年
蓝桥杯 基础练习 特殊回文数
问题描述   123321是一个非常特殊的数,它从左边读和从右边读是一样的。 输入一个正整数n, 编程求所有这样的五位和六位十进制数,满足各位数字之和等于n 。 输入格式   输入一行,包含一个正整数n。 输出格式   按从小到大的顺序输出满足条件的整数,每个整数占一行。 样例输入 52 样例输出 899998 989989 998899 数据规模和约定   1<=n<=54。 C++算法 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 #include <iostream> using namespace std; int main() { int n,a,b,c,t; cin>>n; for(a=1;a<10;a++) for(b=0;b<10;b++) for(c=0;c<10;c++) { t=a*10001+b*1010+c*100; if(2*a+2*b+c==n) cout<<t<<endl; } for(a=1;a<10;a++) for(b=0;b<10;b++) for(c=0;c<10;c++) { t=a*100001+b*10010+c*1100; if(2*a+2*b+2*c==n) cout<<t<<endl; } return 0; } 关注微信公众号,第一时间获取最新内容,让我们一起变得更强!Debug客栈:订阅本站· 文章归档· 我的项目· 友情链接· 我的使用· 飞湾计划· 摄影展集· 我的主页
Debug
入驻第1年
蓝桥杯 基础练习 回文数
问题描述   1221是一个非常特殊的数,它从左边读和从右边读是一样的,编程求所有这样的四位十进制数。 输出格式   按从小到大的顺序输出满足条件的四位十进制数。 C++算法 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 #include<stdio.h> int main() { for(int i1=1;i1<10;i1++) { for(int i2=0;i2<10;i2++) { for(int i3=0;i3<10;i3++) { for(int i4=0;i4<10;i4++) { if(i1==i4 && i2==i3) printf("%d%d%d%d\n",i1,i2,i3,i4); } } } } return 0; } 关注微信公众号,第一时间获取最新内容,让我们一起变得更强!Debug客栈:订阅本站· 文章归档· 我的项目· 友情链接· 我的使用· 飞湾计划· 摄影展集· 我的主页
Debug
入驻第1年
蓝桥杯 基础练习 特殊的数字
问题描述   153是一个非常特殊的数,它等于它的每位数字的立方和,即153=111+555+333。编程求所有满足这种条件的三位十进制数。 输出格式   按从小到大的顺序输出满足条件的三位十进制数,每个数占一行。 C++算法 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 #include<iostream> using namespace std; int main() { int i,j,k; for(i=1;i<=9;i++) { for(j=0;j<=9;j++) { for(k=0;k<=9;k++) { if(i*100+j*10+k==i*i*i+j*j*j+k*k*k) { cout<<i*100+j*10+k<<endl; } } } } return 0; } 关注微信公众号,第一时间获取最新内容,让我们一起变得更强!Debug客栈:订阅本站· 文章归档· 我的项目· 友情链接· 我的使用· 飞湾计划· 摄影展集· 我的主页
Debug
入驻第1年
蓝桥杯 基础练习 杨辉三角形
问题描述 杨辉三角形又称Pascal三角形,它的第i+1行是(a+b)i的展开式的系数。 它的一个重要性质是:三角形中的每个数字等于它两肩上的数字相加。 下面给出了杨辉三角形的前4行: 1 2 3 4 1 1 1 1 2 1 1 3 3 1 给出n,输出它的前n行。 输入格式 输入包含一个数n。 输出格式 输出杨辉三角形的前n行。每一行从这一行的第一个数开始依次输出,中间使用一个空格分隔。请不要在前面输出多余的空格。 样例输入 4 样例输出 1 2 3 4 1 1 1 1 2 1 1 3 3 1 数据规模与约定 1 <= n <= 34。 C++代码 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 #include <iostream> using namespace std; const int MAXN = 40; int n; int a[MAXN][MAXN]; int main() { cin >> n; a[0][0] = 1; for (int i = 0; i < n; ++i) { a[i][0] = a[i][i] = 1; for (int j = 1; j < i; ++j) a[i][j] = a[i-1][j-1] + a[i-1][j]; } for (int i = 0; i < n; ++i) { for (int j = 0; j <= i; ++j) cout << a[i][j] << " "; cout << endl; } return 0; } 关注微信公众号,第一时间获取最新内容,让我们一起变得更强!Debug客栈:订阅本站· 文章归档· 我的项目· 友情链接· 我的使用· 飞湾计划· 摄影展集· 我的主页
Debug
入驻第1年
蓝桥杯 基础练习 查找整数
问题描述 给出一个包含n个整数的数列,问整数a在数列中的第一次出现是第几个。 输入格式 第一行包含一个整数n。 第二行包含n个非负整数,为给定的数列,数列中的每个数都不大于10000。 第三行包含一个整数a,为待查找的数。 输出格式 如果a在数列中出现了,输出它第一次出现的位置(位置从1开始编号),否则输出-1。 样例输入 6 1 9 4 8 3 9 9 样例输出 2 数据规模与约定 1 <= n <= 1000。 C++代码 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 #include <iostream> using namespace std; const int MAXN = 10001; int n, a, ans; int s[MAXN]; int main() { cin >> n; for (int i = 0; i < n; ++i) cin >> s[i]; cin >> a; ans = -1; for (int i = 0; i < n; ++i) { if (s[i] == a) { ans = i + 1; break; } } cout << ans << endl; return 0; } 关注微信公众号,第一时间获取最新内容,让我们一起变得更强!Debug客栈:订阅本站· 文章归档· 我的项目· 友情链接· 我的使用· 飞湾计划· 摄影展集· 我的主页
Debug
入驻第1年
蓝桥杯 基础练习 数列特征
问题描述 给出n个数,找出这n个数的最大值,最小值,和。 输入格式 第一行为整数n,表示数的个数。 第二行有n个数,为给定的n个数,每个数的绝对值都小于10000。 输出格式 输出三行,每行一个整数。第一行表示这些数中的最大值,第二行表示这些数中的最小值,第三行表示这些数的和。 样例输入 5 1 3 -2 4 5 样例输出 5 -2 11 数据规模与约定 1 <= n <= 10000。 C++代码 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 #include<cstdio> #include<iostream> #include<algorithm> #include<cstring> using namespace std; int main(){ int n; while(cin>>n){ int a[10005]; int sum=0; for(int i=0;i<n;i++){ scanf("%d",&a[i]); sum+=a[i]; } sort(a,a+n); cout<<a[n-1]<<endl<<a[0]<<endl<<sum<<endl; } return 0; } 关注微信公众号,第一时间获取最新内容,让我们一起变得更强!Debug客栈:订阅本站· 文章归档· 我的项目· 友情链接· 我的使用· 飞湾计划· 摄影展集· 我的主页
Debug
入驻第1年
蓝桥杯 基础练习 字母图形
问题描述 利用字母可以组成一些美丽的图形,下面给出了一个例子: 1 2 3 4 5 ABCDEFG BABCDEF CBABCDE DCBABCD EDCBABC 这是一个5行7列的图形,请找出这个图形的规律,并输出一个n行m列的图形。 输入格式 输入一行,包含两个整数n和m,分别表示你要输出的图形的行数的列数。 输出格式 输出n行,每个m个字符,为你的图形。 样例输入 5 7 样例输出 1 2 3 4 5 ABCDEFG BABCDEF CBABCDE DCBABCD EDCBABC 数据规模与约定 1 <= n, m <= 26。 C++代码 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 #include <iostream> #include <cmath> using namespace std; int main() { int n, m; cin >> n >> m; for (int i = 0; i < n; ++i) { for (int j = 0; j < m; ++j) cout << char('A'+abs(i-j)); cout << endl; } return 0; } 关注微信公众号,第一时间获取最新内容,让我们一起变得更强!Debug客栈:订阅本站· 文章归档· 我的项目· 友情链接· 我的使用· 飞湾计划· 摄影展集· 我的主页
Debug
入驻第1年
蓝桥杯 基础练习 01字串
问题描述 对于长度为5位的一个01串,每一位都可能是0或1,一共有32种可能。它们的前几个是: 1 2 3 4 5 00000 00001 00010 00011 00100 请按从小到大的顺序输出这32种01串。 输入格式 本试题没有输入。 输出格式 输出32行,按从小到大的顺序每行一个长度为5的01串。 样例输出 1 2 3 4 5 00000 00001 00010 00011 <以下部分省略> C++代码 1 2 3 4 5 6 7 8 9 10 11 12 #include <iostream> using namespace std; int main() { for (int i = 0; i <= 1; ++i) for (int j = 0; j <= 1; ++j) for (int k = 0; k <= 1; ++k) for (int l = 0; l <= 1; ++l) for (int m = 0; m <= 1; ++m) cout << i << j << k << l << m << endl; return 0; } 关注微信公众号,第一时间获取最新内容,让我们一起变得更强!Debug客栈:订阅本站· 文章归档· 我的项目· 友情链接· 我的使用· 飞湾计划· 摄影展集· 我的主页
Debug
入驻第1年
蓝桥杯 基础练习 闰年判断
问题描述 给定一个年份,判断这一年是不是闰年。 当以下情况之一满足时,这一年是闰年: 年份是4的倍数而不是100的倍数; 年份是400的倍数。 其他的年份都不是闰年。 输入格式 输入包含一个整数y,表示当前的年份。 输出格式 输出一行,如果给定的年份是闰年,则输出yes,否则输出no。 说明:当试题指定你输出一个字符串作为结果(比如本题的yes或者no,你需要严格按照试题中给定的大小写,写错大小写将不得分。 样例输入2013 样例输出no 样例输入2016 样例输出yes 数据规模与约定 1990 <= y <= 2050。 C++源代码 1 2 3 4 5 6 7 8 9 10 11 12 #include <iostream> using namespace std; int main() { int y; cin >> y; if (y%4==0 && y%100!=0 || y%400==0) cout << "yes" << endl; else cout << "no" << endl; return 0; } 关注微信公众号,第一时间获取最新内容,让我们一起变得更强!Debug客栈:订阅本站· 文章归档· 我的项目· 友情链接· 我的使用· 飞湾计划· 摄影展集· 我的主页
Debug
入驻第1年
蓝桥杯 入门训练 Fibonacci数列
问题描述 Fibonacci数列的递推公式为:Fn=Fn-1+Fn-2,其中F1=F2=1。 当n比较大时,Fn也非常大,现在我们想知道,Fn除以10007的余数是多少。 输入格式 输入包含一个整数n。 输出格式 输出一行,包含一个整数,表示Fn除以10007的余数。 说明:在本题中,答案是要求Fn除以10007的余数,因此我们只要能算出这个余数即可,而不需要先计算出Fn的准确值,再将计算的结果除以10007取余数,直接计算余数往往比先算出原数再取余简单。 样例输入10 样例输出55 样例输入22 样例输出7704 数据规模与约定 1 <= n <= 1,000,000 C++代码 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 #include <stdlib.h> #include <stdio.h> #define MOD 10007 #define MAXN 1000001 int n, i, F[MAXN]; int main() { scanf("%d", &n); F[1] = 1; F[2] = 1; for (i = 3; i <= n; ++i) F[i] = (F[i-1] + F[i-2]) % MOD; printf("%d\n", F[n]); return 0; } 关注微信公众号,第一时间获取最新内容,让我们一起变得更强!Debug客栈:订阅本站· 文章归档· 我的项目· 友情链接· 我的使用· 飞湾计划· 摄影展集· 我的主页
Debug
入驻第1年
蓝桥杯 入门训练 圆的面积
问题描述 给定圆的半径r,求圆的面积。 输入格式 输入包含一个整数r,表示圆的半径。 输出格式 输出一行,包含一个实数,四舍五入保留小数点后7位,表示圆的面积。 说明:在本题中,输入是一个整数,但是输出是一个实数。 对于实数输出的问题,请一定看清楚实数输出的要求,比如本题中要求保留小数点后7位,则你的程序必须严格的输出7位小数,输出过多或者过少的小数位数都是不行的,都会被认为错误。 实数输出的问题如果没有特别说明,舍入都是按四舍五入进行。 样例输入 4 样例输出 50.2654825 数据规模与约定 1 <= r <= 10000 提示 本题对精度要求较高,请注意π的值应该取较精确的值。你可以使用常量来表示π,比如PI=3.14159265358979323,也可以使用数学公式来求π,比如PI=atan(1.0)*4。 C++源代码 1 2 3 4 5 6 7 8 9 10 11 12 #include <stdio.h> #include <math.h> int main() { int r; double s, PI; scanf("%d", &r); PI = atan(1.0) * 4; s = PI * r * r; printf("%.7lf", s); return 0; } 关注微信公众号,第一时间获取最新内容,让我们一起变得更强!Debug客栈:订阅本站· 文章归档· 我的项目· 友情链接· 我的使用· 飞湾计划· 摄影展集· 我的主页
Debug
入驻第1年
蓝桥杯 入门训练 序列求和
问题描述 求1+2+3+…+n的值。 输入格式 输入包括一个整数n。 输出格式 输出一行,包括一个整数,表示1+2+3+…+n的值。 样例输入4 样例输出10 样例输入100 说明:有一些试题会给出多组样例输入输出以帮助你更好的做题。 一般在提交之前所有这些样例都需要测试通过才行,但这不代表这几组样例数据都正确了你的程序就是完全正确的,潜在的错误可能仍然导致你的得分较低。 样例输出5050 数据规模与约定 1 <= n <= 1,000,000,000。 说明:请注意这里的数据规模。 本题直接的想法是直接使用一个循环来累加,然而,当数据规模很大时,这种“暴力”的方法往往会导致超时。此时你需要想想其他方法。你可以试一试,如果使用1000000000作为你的程序的输入,你的程序是不是能在规定的上面规定的时限内运行出来。 本题另一个要值得注意的地方是答案的大小不在你的语言默认的整型(int)范围内,如果使用整型来保存结果,会导致结果错误。 如果你使用C++或C语言而且准备使用printf输出结果,则你的格式字符串应该写成%I64d以输出long long类型的整数。 C++源代码 1 2 3 4 5 6 7 8 9 #include <iostream> using namespace std; int main() { long long n; cin >> n; cout << (1+n) * n / 2; return 0; } 关注微信公众号,第一时间获取最新内容,让我们一起变得更强!Debug客栈:订阅本站· 文章归档· 我的项目· 友情链接· 我的使用· 飞湾计划· 摄影展集· 我的主页
阿川
入驻第1年
2018 小总结

© 2026 好站网HaoZhan.wang 1.5 版权所有

苏ICP备19065220号-4    萌ICP备20269980号    茶ICP备2026050346号
本站数据    2026年报    版本历史    关于本站