c++
一个没有姓名的咸鱼
Github:https://github.com/LelandYan
展开
-
报数3的人退出圈子
编程题《报数3的人退出圈子》18. 【问题描述】有n个人围成一圈,按顺序从1到n编号。从第一个人开始报数,报数3的人退出圈子,下一个人从1开始重新报数,报数3的人退出圈子。如此循环,直到留下最后一个人。问留下来的人的编号。【输入形式】考虑如下两种情况: 如果n超出“n must be a natural number less than 10000”,则打印“n is out of rang...原创 2018-06-20 19:52:25 · 1553 阅读 · 1 评论 -
《使所有整数顺序循环移动m个位置》
【问题描述】有n个整数,使其中所有整数顺序向右(向后)循环移动m个位置。编写一个函数实现以上功能,在主函数中输入n个整数并输出调整后的n个整数。【输入形式】首先打印“Input n,m:”;然后直接在冒号后面输入数据正整数n,表示共有n个整数;空一格;输入m,表示顺序向右(向后)循环移动m个位置;回车。连续输入n个整数数值,每个数值之间用空格隔开;回车;【输...原创 2018-06-19 21:55:21 · 2799 阅读 · 1 评论 -
牛客小白月赛4--病菌感染
题目描述铁子和顺溜上生物课的时候不小心将几滴超级病菌滴到了培养皿上,这可急坏了他们。 培养皿可以被看成一个n*n的方格,最初病菌滴在了这n*n的格子中的某些格子,病菌的传染方式是这样的,如果一个方格与两个或多个被感染的方格相邻(两个方格相邻当且仅当它们只有一条公共边), 那么它就会被感染。现在铁子和顺溜想知道,最终所有的方格会不会都被感染。输入描述:第一行两个整数n,m。n表示方格的规格,m表示最...原创 2018-06-20 14:02:30 · 920 阅读 · 1 评论 -
c++---归并排序笔记(求逆序数)
今天学习了一下关于排序的一点东西,发现是真多,下面说一下一个我觉得非常牛的排序,归并排序网上很多都做过归并排序与sort()快速排序的排序时间的对比,结果归并排序比c++标准库定义的sort()还快但它也不是没有缺点,就是空间的浪费的比较严重,它不是在原地址上进行修改,而是创建一个临时数组来储存,再排序。下面我简单说一下我对它的理解:感觉它有点像二分法的,就是先将数组分为两...原创 2018-07-16 21:26:51 · 2064 阅读 · 0 评论 -
函数原型和函数声明的区别
函数原型:指明函数的名字,返回的类型,有几个参数,这几个参数是什么类型,不需要函数体,也不需要形式参数的名字,其中用分号作为原型的结束符。例如:int fun( int );第一个int指明返回的类型,第二个int指明形参的类型(注意第二个形参可有可无)函数定义:必须要有函数体,同时要有函数的名字,形参的名字和类型.例如:int fun(int a){ return a...原创 2018-07-04 19:22:24 · 20485 阅读 · 8 评论 -
c++--暴力破解骑士周游
#include <iostream>#include <cstdlib>#include <ctime>#include <cmath>#include <algorithm>using namespace std;int timess[1000];//储存骑士每个周期的行走的次数int time1 = 0;//计算有多少个周期int ...原创 2018-07-04 19:48:22 · 809 阅读 · 0 评论 -
c++海龟图
#include <iostream>#include <string>using namespace std;void head();//游戏开始函数void isorno(int [],int floor[20][20],int,bool&prinf);void print(int floor[20][20]);//打印20*20的二维数组int main(){...原创 2018-07-04 19:49:39 · 1443 阅读 · 0 评论 -
c++中的结构体常见应用
个人感觉就是c++的类的一个简化的版本,但对比普通的变量来说,其主要的优点可以储存多个不同类型的变量,从而构成一个变量的集合。例如:struct a { int a; double b; }这里的a结构体就储存了int,double型主要的运用:个人感觉struct的主要用处在于解决map所对应的按照输入的顺序...原创 2018-07-05 08:51:34 · 539 阅读 · 0 评论 -
Djikstra理解1
今天看了一下午的djikstra,到了晚上才理解了一点,做下记录吧。。。。。这个算法我感觉很low,我觉得像暴力破解一样,很像动态规划,就是每一部都是最优解(局部最优解),到最后就形成了(整体的最优解)。就如下方的例题,在求图中(这里的图可以是有向图和无向图)一点到另一点的最近距离时,先求出距离起始点最近的点然后,分别求出其他的点到终点的距离,这里要注意,因为图并不是每个都是相连的...原创 2018-07-20 21:57:50 · 1640 阅读 · 1 评论 -
dfs-bfs理解
1:dfs被称为深度优先搜索,从字面上就可以理解,其强调的深度,其是一条路走到死,在返回上节点,在选一条路,在走。它最好不要用于最短路径上。我觉的主要用于的是求出数量不大的所有的路径,或者是求路径的条数的问题上2:bfs被称为广度优先搜索,其强调的是广度,当然,主要用于找到一条最短的路(这里注意这里的最短路径和djiktra的所求的最短路径有所不同我的理解是,bfs所求的最短路径是针对与无权的...原创 2018-07-22 16:50:21 · 695 阅读 · 0 评论 -
筛选法求素数模板
#include<iostream>#include<cmath>using namespace std;int main(){ int a=1000;///要求的素数的范围 bool flag[10000]; int m=sqrt(a+0.5); for(int i=2;i<=m;i++) if(!flag...原创 2018-07-22 18:24:36 · 625 阅读 · 0 评论 -
P1478 陶陶摘苹果(升级版)
题目描述又是一年秋季时,陶陶家的苹果树结了n个果子。陶陶又跑去摘苹果,这次她有一个a公分的椅子。当他手够不着时,他会站到椅子上再试试。这次与NOIp2005普及组第一题不同的是:陶陶之前搬凳子,力气只剩下s了。当然,每次摘苹果时都要用一定的力气。陶陶想知道在s<0之前最多能摘到多少个苹果。现在已知n个苹果到达地上的高度xi,椅子的高度a,陶陶手伸直的最大长度b,陶陶所剩的力气s,陶陶摘...原创 2019-09-10 13:21:43 · 519 阅读 · 0 评论 -
P1618 三连击(升级版)
题目描述将1,2,…,9共9个数分成三组,分别组成三个三位数,且使这三个三位数的比例是A:B:C,试求出所有满足条件的三个三位数,若无解,输出“No!!!”。//感谢黄小U饮品完善题意输入格式三个数,A B C。输出格式若干行,每行3个数字。按照每行第一个数字升序排列。输入输出样例输入 #1复制1 2 3输出 #1复制192 384 576219 438 657273 5...原创 2019-09-10 13:45:52 · 238 阅读 · 0 评论 -
求两组整数的交集a
【问题描述】从标准输入中输入两组整数(每组不超过20个整数,每组整数中的元素不重复,并且整数大于等于0),编程求两组整数的交集,即在两组整数中都出现的整数,并按从小到大顺序排序输出。若交集为空,则什么都不输出。【输入形式】在两行上分别输入两组整数,以一个空格分隔各个整数,以-1作为输入结束。【输出形式】按从小到大顺序排序输出两组整数的交集(以一个空格分隔各个整数,最后一个整数后的空格可有可无)。【...原创 2018-06-19 21:42:44 · 6805 阅读 · 2 评论 -
用下列公式计算sin(x)的近似值
c++易错题【问题描述】给定一个精度值e,用下列公式计算sin(x)的近似值,要求前后两次迭代之差的绝对值小于e,给出相应的最小迭代次数n和最后一次计算的sin(x)值。 sin x = x - x3/3! + x5/5! - x7/7! + ... + (-1)n-1x2n-1/(2n-1)! 其中x为弧度,n为正整数。 【输入形式】从控制台输入x( (0<x<=10) )和e( x...原创 2018-06-19 21:04:20 · 13291 阅读 · 1 评论 -
c++中的cin.get()的用法
cin.get()的用法说明:cin.get()是针对char类型的,如果想得到int等其他的类型需要进行类型转化1:变量名(char)=cin.get();用来获取输入的第一个字符例如:char ch;ch = cin.get();//或cin.get(ch);cout << ch;//若输入abc则输出a2:cin.get(字符数组名,20)//20指的是输入字符串的个数这里对比c...原创 2018-06-26 13:07:13 · 28386 阅读 · 6 评论 -
阶乘和数(正序)
【问题描述】 一个正整数如果等于组成它的各位数字的阶乘之和,则该正整数称为阶乘和数。例如正整数145,1!+4!+5!等于145,因此145就是一个阶乘和数。输入一个正整数,计算它的各位数字的阶乘之和,并判断它是否是一个阶乘和数。注意:输入的正整数,以及组成它的各位数字的阶乘之和都不会超过int类型的表示范围,并且输入的正整数的最高位不为0。 【输入形式】 从控制台输入一个正整数。 【输出形式】 ...原创 2018-06-20 19:53:49 · 6439 阅读 · 1 评论 -
牛客小白月赛4--A 三角形--解题报告
题目描述铁子从森林里收集了n根木棍,她开始将它们按顺序的排成一排,从左到右依次为1到n,她回想起 在数学课上老师教她的三角形知识,她开始从这些木棍中间找三根木棍来组成一个周长最大的三角形, 这时她的兄弟顺溜偷偷的溜了过来,偷走了第i根木棍,现在她想知道现在能够组成周长最大的三角形 的周长是多少?输入描述:第一行两个整数n和q。(1 ≤ n, q ≤ 105)第二行n个整数表示第i根木棍的长度ai...原创 2018-06-22 00:01:36 · 548 阅读 · 0 评论 -
当前编程题---阶乘和数(正序)
【问题描述】 一个正整数如果等于组成它的各位数字的阶乘之和,则该正整数称为阶乘和数。例如正整数145,1!+4!+5!等于145,因此145就是一个阶乘和数。输入一个正整数,计算它的各位数字的阶乘之和,并判断它是否是一个阶乘和数。注意:输入的正整数,以及组成它的各位数字的阶乘之和都不会超过int类型的表示范围,并且输入的正整数的最高位不为0。 【输入形式】 从控制台输入一个正整数。 【输出形式】 ...原创 2018-06-22 12:59:09 · 3222 阅读 · 1 评论 -
当前编程题:《某时间的前一秒和后一秒时间》
【问题描述】从键盘输入24小时制的某个时间,计算并输出其前一秒和后一秒的时间。【输入形式】从键盘输入24小时制的某个时间,格式为:hh:mm:ss。【输出形式】输出2行,第1行为输入时间的前1秒时间,第2行为输入时间的后1秒时间,格式为:hh:mm:ss。【样例输入1】09:59:59【样例输出1】09:59:5810:00:00【样例输入2】00:00:00【样例输出2】23:59:5900:0...原创 2018-06-22 14:01:47 · 3299 阅读 · 8 评论 -
c++简单的string与int等间的互相转化
1:将int ,long ,long long,flaot,double,long double等转化为string 方法一:to_string()函数运用 这个函数的用法其实也挺简单就是在括号内加上你想转化的数字然后赋给一个string类型的变量就行了 例如:想要将int a = 100转化为string b = "100"可以这...原创 2018-06-22 13:59:08 · 437 阅读 · 0 评论 -
4.2.3 编程题《将一笔钱换算成1分、2分和5分的硬币组合》
将一笔钱(大于8分,小于1元,精确到分)换算成1分、2分和5分的硬币组合。输入金额,问有几种换算方法?要求每种硬币至少有一枚。【输入形式】从键盘输入一个正整数n。【输入输出样例1】(下划线部分表示输入)Input money: 10count=2【样例说明】输入提示符后要加一个空格。其中“:”后要加一个且只能一个空格。英文字母区分大小写。必须严格按样例输入输出。解题思路与易错分析:思路是先用总钱数...原创 2018-06-22 15:19:53 · 9320 阅读 · 0 评论 -
逆序乘积式--简单的方法
当前编程题:考试题---逆序乘积式47.【问题描述】若两个正整数的乘积,等于两正整数各自逆序后的乘积,则称其为逆序乘积式。编写程序读入两个正整数,然后判断这两个正整数能否构成逆序乘积式。假设两个正整数的乘积不会超过int数据类型的表示范围。【输入形式】从控制台输入以一个空格分隔的两个正整数。【输出形式】若两个正整数能够构成逆序乘积式,则输出两个正整数及其逆序的乘积形式,并且中间用一个等号相连;若不...原创 2018-06-23 19:51:26 · 4965 阅读 · 0 评论 -
求解两个数最大公约数与最小公倍数--辗转相除法
求最大公约数与最小公倍数的问题有很多方法这里简绍辗转相除法(用来求最大公因数)我们通过数学证明可以得出两个数的乘积=最大公约数x最小公倍数详细的简绍可以参考百度百科辗转相除法:就是选取两个数中用大的对小的取余,若余数为零就输出小的数并输出,若不为零,用被除数对刚才的余数求余........下面给出我的代码int factor(int a,int b){ int temp,dive=0; ...原创 2018-06-23 22:35:24 · 327 阅读 · 1 评论 -
《求符合要求的自然数对》
当前编程题:考试题---《求符合要求的自然数对》15.【问题描述】编程输出符合如下要求的自然数对:它们的和为667,它们的最小公倍数除以最大公约数的商为120。输出格式为每对一行,小数在前,大数在后,两数间用逗号分隔,多对则按每对中小数的大小升序排列先后。【输入形式】无输入。【输出形式】每个自然数对一行,小数在前,大数在后,两数间用逗号分隔,多对则按每对中小数的大小升序排列先后。关于详细的求最大公...原创 2018-06-23 22:38:24 · 949 阅读 · 0 评论 -
牛客网 J 强迫症 > 28053190 ---解题报告
铁子最近犯上了强迫症,他总是想要把一个序列里的元素变得两两不同,而他每次可以执行一个这样的操作,他可以选择序列里的任意两个元素相加,不妨记作ai和aj,然后把ai+aj放进序列里,再删掉ai和aj其中的随便一个,问最少操作多少次可以完成铁子的愿望?题目思路:输入一个数组,并使数组中的元素两两不同(其实就是数组的去重的问题),求出最少的步骤(选择序列里的任意两个元素相加,不妨记作ai和aj,然后把a...原创 2018-06-17 00:08:24 · 620 阅读 · 1 评论 -
约瑟夫环解体报告
12. 【问题描述】要从n只猴子中选出一位大王。它们决定使用下面的方法:n只猴子围成一圈,从1到n顺序编号。从第q只猴子开始,从1到m报数,凡报到m的猴子退出竞选,下一次又从退出的那只猴子的下一只开始从1到m报数,直至剩下的最后一只为大王。请问最后哪只猴子被选为大王。【输入形式】控制台输入三个整数n,m,q。【输出形式】输出最后选为大王的猴子编号。【样例输入】7 4 3【样例输出】4【样例说明...原创 2018-06-13 14:41:28 · 336 阅读 · 0 评论 -
等价串--解题报告
牛客小白月赛4 --F 等价串--解题报告题目描述 一串长度为 n 的字符串 A 和一串长度为 m 的字符串 B。并且这两串字符串只会含有 0 或 1 。铁子可以对字符串 A 执行两种操作,两种操作可以执行任意次。操作1(无情替换):铁子可以用 11 替换掉 0 ,也可以用 00 替换掉 1 .操作2(极限删除):铁子可以删除掉 111 ,也可以删除 000 .现在问,字符串 A 可以变成字符串 ...原创 2018-06-17 12:08:25 · 302 阅读 · 0 评论 -
给定精度e求(1+x)^α的近似值和迭代次数
给定精度e,求(1+x)^α,|x|<1的近似值和迭代次数 【问题描述】给定一个精度e,用下列Taylor公式计算(1+x)a,|x|<1的近似值。(1+x)a=1+ax+a(a-1)x2/2!+...+[a(a-1)...(a-n+1)]xn/n!+..., |x|<1其中|x|<1,e为实数,a为实数。编写程序根据用户输入的x(|x|<1)、a和e的值,利用上述T...原创 2018-06-26 13:05:19 · 4307 阅读 · 0 评论 -
P2089 烤鸡
猪猪hanke得到了一只鸡题目描述猪猪Hanke特别喜欢吃烤鸡(本是同畜牲,相煎何太急!)Hanke吃鸡很特别,为什么特别呢?因为他有10种配料(芥末、孜然等),每种配料可以放1—3克,任意烤鸡的美味程度为所有配料质量之和现在,Hanke想要知道,如果给你一个美味程度,请输出这10种配料的所有搭配方案输入格式一行,n<=5000输出格式第一行,方案总数第二行至结束,10个数,...原创 2019-09-11 13:51:58 · 416 阅读 · 0 评论