自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(13)
  • 收藏
  • 关注

原创 四种方法实现求最大子列和(C++)

第一种暴力破解法,时间复杂度 T(n)=n^3int main(){ int num[10] = { 1,2,4,-5,4,0,-8,9,9,-1 }; int summax=0; for(int i=0;i<10;i++) for (int j = i; j < 10; j++) { int sum = 0; for (int k = i; k <= j; k++) sum += num[k]; summax = sum > sum

2022-04-11 23:12:56 2094

原创 【算法】蛇形填数

蛇形填数。在n×n方阵里填入1,2, ...,n×n,要求填成蛇形。例如,n=4时方阵 为:10 11 12 1 9 16 13 2 8 15 14 3 7 6 5 4 在前n个数字输入结束后,后面输入可以分组输入j'oint snake[9][9];int main(){ int n,i=1,m=0; cin >> n; int x = n - 1, y = 0; mems

2022-04-04 20:44:07 1429

原创 数组小问题(大小,复制,开灯问题)

#define maxn 10000005int a[maxn], b[maxn];//将数组的声明放在main外面可以开得很大//在main内时,稍微一点大就会异常退出,比如10000005int main(){ int x, n = 0; while (cin >> x) a[n++] = x; memcpy(b, a, sizeof(int) * n);//可用此方法将a中前n个元素复制到b中 //浮点型数组要用double,形如memcpy(b,a,sizeof(.

2022-04-04 20:01:44 167

原创 开始:什么是数据结构(一点点关于复杂度)

递归会占用大量的空间,在数据过大时,程序很可能无法正常运行例如此程序,使用递归,我的垃圾电脑10000都算不到,直接报错了void coutl1(int x) { if (x) { coutl1(x - 1); cout << x; } return ;}int main() { int n; cin >> n; coutl1(n); return 0;}而使用一个普通的循环的话就可以到10000甚至更多了void coutl2(int

2022-04-01 18:43:27 657

原创 分数化小数(多精确度小数)

输入正整数a,b,c,输出a/b的小数形式,精确到小数点后c位。a,b≤106,c≤100。输入包含多组数据,结束标记为a=b=c=0。样例输入:164000样例输出:Case1:0.1667在单单使用double说明变量,用‘/’计算当然是行不通的,于是要用别的方式来计算除法得出的每一位小数都可以用余数乘以十除以除数得其商得到例1/7=0.142857142857…1%7=11*10/7=11*10%7=33*10/7=4...

2022-03-25 21:50:41 355

原创 子序列的和

输入两个正整数n<m<10^6,输出1/n²+1/(n+1)²+…+1/m²,保留五位小数。输入包含多组数据,结束标记为n=m=0。样例输入:246553665536000样例输出:Case1:0.42361Case2:0.00001#include<cstdio> //使用scanf()和printf()//其他c语言的库也是可以前加c后去.h用int main(){ int n, m,coun...

2022-03-25 21:15:55 117

原创 韩信点兵,多多益善

相传韩信才智过人,从不直接清点自己军队的人数,只要让士兵先后以三人一排、五人一排、七人一排地变换队形,而他每次只掠一眼队伍的排尾就知道总人数了。输入包含多组数据,每组数据包含3个非负整数a,b,c,表示每种队形排尾的人数(a<3,b<5,c<7),输出总人数的最小值(或报告无解)。已知总人数不小于10,不超过100。输入到文件结束为止。样例输入:2 1 62 1 3样例输出:Case1:41Case2:Noanswerint main(){ ...

2022-03-25 21:04:40 131

原创 求水仙花数

输出100~999中的所有水仙花数。若3位数ABC满足ABC=A3+B3+C3,则称其为水仙花数。int main(){ for (int i = 100; i <= 999; i++) { int a = i % 10, b = i /100, c = (i - b * 100) / 10; //cout << a <<' ' << b<<' ' << c<<'\n';.

2022-03-25 20:56:46 136

原创 输入输出框架

输入一些整数,求出它们的最小值、最大值和平均值(保留3位小数)。输入保证这些数都是不超过1000的整数。样例输入:2 8 3 5 1 7 3 6样例输出:184.375int main(){ int num, max, min, sum = 0, count = 0; while (cin >> num)//告诉你的windows计算机退出输入:ctrl+z,Linux是:ctrl+d(真的谢) { count++; ...

2022-03-25 20:16:28 180

原创 阶乘(注意运行时间)

输入n,计算S=1!+2!+3!+...+n!的末6位(不含前导0)。n≤106,n!表示前n个正整数之积。样例输入:10样例输出:37913(25!末尾有六个零,所以往后的输出都一样)int main(){ const int Mod = 1000000;//常变量 int n,sum=0,p=1; cin >> n; for (int i = 1; i <= n; i++) { p *= i;//每个循环中阶..

2022-03-25 19:47:52 628

原创 求近似数(指数表示方法)

计算直到最后一项小于10^-6int main(){ double sum = 0; int f = 1; for (int num = 1;; num += 2) { double a = 1.0 / num; if (a >= 1e-6)//注意指数的表示方法 { sum += f * a; f *= -1; } else

2022-03-25 19:44:22 498

原创 3n+1问题

对于任意大于1 的自然数n,若n为奇数,则将n变为3n+1,否则变为n的一半。经过若干次这样的变换,一定会使n变为1。输入n,输出变换次数。输入范围0~10^9。int main(){ int n,count=0;//count计数 cin >> n; while (n != 1) { if (n % 2 == 1) n = 3 * n + 1; else n = n / 2; count++; }

2022-03-25 19:16:58 962

原创 7744问题(C++)

输出所有形如aabb的4位完全平方数1,aabb是否为完全平方数int main(){ double num, num1; for (int i = 1; i < 10; i++) { for (int j = 0; j < 10; j++) { num = i * 1100 + j * 11; //double floor(double x)返回不超过x的最大整数

2022-03-25 19:07:56 953

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除