随笔分类 - C++
C++语言的相关知识
摘要:【引言】 数据也需要等待,因为有些数据是存在生命周期的,错了位,那当然就是错了【问题的出现】 C++一本通在线测评"1191:流感传染",题目要求如下 【题目描述】 有一批易感人群住在网格状的宿舍区内,宿舍区为n*n的矩阵,每个格点为一个房间,房间里可能住人,也可能空着。在第一天,有些房间里的人得了
阅读全文
摘要:0、算法概述 0.1 算法分类 十种常见排序算法可以分为两大类: 比较类排序:通过比较来决定元素间的相对次序,由于其时间复杂度不能突破O(nlogn),因此也称为非线性时间比较类排序。 非比较类排序:不通过比较来决定元素间的相对次序,它可以突破基于比较排序的时间下界,以线性时间运行,因此也称为线性时
阅读全文
摘要:九连环的解决基本方法:想要改变某一个环的状态,须保证两点,第一,其前面一个环须是挂在横杆上,第二,更前面的环都没挂在横杆上,然后采用递推与递归的思想一步一步改变. 首先:了解环的状态. 从右往左数,第一个环定义为横杆之下(取下),第二个环定义为横杆之上(挂起),第三环为非正常状态(尽量不要弄成这样,
阅读全文
摘要:(参看链接:https://blog.csdn.net/weixin_44307065/article/details/99683520) 一、字符输入(定义char c) 函数 用法 说明 cin cin>>c 不读取空格以及换行,不会从流中去掉换行和空格 scanf scanf(“%c”,&c)
阅读全文
摘要:昨天给学生写一个快读程序,居然没成功,代码如下: #include<iostream> #include<cstdio> using namespace std; int readint() { char ch=0; int zs=0,fh=1; do { ch=getchar(); } while
阅读全文
摘要:【题目描述】 石头剪子布,是一种猜拳游戏。起源于中国,然后传到日本、朝鲜等地,随着亚欧贸易的不断发展它传到了欧洲,到了近现代逐渐风靡世界。简单明了的规则,使得石头剪子布没有任何规则漏洞可钻,单次玩法比拼运气,多回合玩法比拼心理博弈,使得石头剪子布这个古老的游戏同时用于“意外”与“技术”两种特性,深受
阅读全文
摘要:堆,一种非常重要的数据结构。能实现数据的自动排序,而且排序时间复杂度为O(nlogn),在n达到10^4时,O(n2)级算法就容易超时,但堆排序不会。堆可调用STL系统函数,简化代码,容易书写。一般情况,如果堆元素为数、字符、字符串都可有用默认的排序规则。如果元素是pair类型,其比较大小的方式为先
阅读全文
摘要:1439:【SCOI2010】传送带(一本通网站原题链接) 【分析】 这个题目其实我想的比较简单,问题的决策点在于何时离开第一个传送带,何时上第二个传送带。两个决策点可变为一个决策问题用两次。我们把这个问题换一个说法。你在笔直的河岸边发现河中一人求救,己知你水中速度和岸上速度,求你到达求救者的最短时
阅读全文
摘要:1438:灯泡(一本通网站原题链接) 【分析】 这个题其实我想说就是一个数学题,借助电脑比用笔算更简单的数学题。如右图,我画了三个图,倒着看吧,最后一个图最简单,人就靠墙站了,这时人的影子长等于人的高度h,这意味着影子的长最少是人的高度。其次是第二个图影子的末尾刚好是墙根,根据我这个图的数据应该比人
阅读全文
摘要:1437:扩散(一本通网站原题链接) 【分析】 本题初看很是高兴,虽然数值较大,但数据量很小,随便折腾都不会超时。再看本题所需解决的问题,1:如何确定点的连通。这个问题很熟悉,之前高中数学中有一个题目:在画有方格的纸上有两个格点A、B,一只蚂蚁从A沿网格线爬到B的最短路径有多少条。其实就是横格与竖格
阅读全文
摘要:1430:家庭作业(一本通网站原题链接) 【分析】 首先:这些作业由于时间关系,可能做不完,意味着必须放掉一些,放弃哪些作业呢?由于所有作业都是一天完成,显然得放弃得分低一点的。这里当然是个贪心策略,先做分值高的,再做分值低的。后面的作业没时间做了就放弃。其次:作业只分是否完成,何时完成没有关系,只
阅读全文
摘要:1624:樱花(一本通网站原题链接) 【分析】 一般不定方程的解多是质因数分析。比如2x+3y=100,那么y=2*(50-x)/3,显然y是偶数,50-x必然是3的倍数,两组解的x的差必然是3的倍数等。对本题先试着解一下:x=y*n!/(y-n!)=n!*[y/(y-n!)],由此可得两点:y>n
阅读全文
摘要:1623:Sherlock and His Girlfriend(原题链接) 【分析】 这个题目初看我还以为题出错了,因为”一件珠宝的价格是另一件的质因子时,两件珠宝的颜色不同“,那意味着只要把数分两类就好:一类是质数,另一类是合数,各取一种颜色就搞定。有这么简单?但也想不出其他理解啊。报着试一试的
阅读全文
摘要:1621:轻拍牛头原题(嵌入代码可能效果不好,请点链接看原题) 【题目描述】 原题来自:USACO 2008 Dec. Silver 今天是贝茜的生日,为了庆祝自己的生日,贝茜邀你来玩一个游戏。 贝茜让 NN 头奶牛坐成一个圈。除了 11 号与 NN 号奶牛外,ii 号奶牛与 i−1i−1 号和 i
阅读全文
摘要:1619: 【例 1】Prime Distance原题 【题目描述】 原题来自:Waterloo local,题面详见 POJ 2689 给定两个整数 L,RL,R,求闭区间 [L,RL,R] 中相邻两个质数差值最小的数对与差值最大的数对。当存在多个时,输出靠前的素数对。 【输入】 多组数据。每行两
阅读全文
摘要:一本通网站1356 我写了以下代码: //1356:计算(calc) /*基本思路:后面优先级高,前面内容入栈,否则先算前面内容*/ #include<iostream> #include<cstdio> #include<cstring> using namespace std; int cons
阅读全文
摘要:一本通网站基础篇题目终于完结,发篇随笔纪念下这一伟大时刻的到来。 一本通网站基础篇题目所有AC代码(点此进入) 说明:此篇所有代码均为网站提交通过的代码且基本都是本人亲写。(当然部分题目也可能参考了网站其他文章、请教了其他老师),如发现代码有错,烦请告知,感谢! 特别明谢:之江学院石老师、江西省丰城
阅读全文
摘要:1246:膨胀的木棍 【题目描述】 当长度为L的一根细木棍的温度升高n度,它会膨胀到新的长度L’=(1+n*C)*L,其中C是热膨胀系数。 当一根细木棍被嵌在两堵墙之间被加热,它将膨胀形成弓形的弧,而这个弓形的弦恰好是未加热前木棍的原始位置。 你的任务是计算木棍中心的偏移距离。 【输入】 三个非负实
阅读全文