随笔分类 - 排序
摘要:快速排序参考: https://blog.csdn.net/qq_28584889/article/details/88136498 快速排序模板: 1 //快速排序 2 #include<iostream> 3 #include<cstdio> 4 using namespace std; 5 v
阅读全文
摘要:冒泡排序参考: https://blog.csdn.net/fly_wt/article/details/79842364 冒泡排序模板: 1 //冒泡排序 2 #include<iostream> 3 #include<cstdio> 4 using namespace std; 5 int ma
阅读全文
摘要:[2004年NOIP提高组] 合并果子 分析:根据题意,最先合并的果子加的次数最多,所以在每次合并时都要选取最小的两个进行,这就用到了排序算法,一开始给所有的果子从小到大排序,这里使用了快速排序,然后在每一次合并完最小的两个后,将合并完的数与剩余的数进行比较,在这里用1次冒泡,效率是最高的,在每次合
阅读全文
摘要:[2008年NOIP普及组] 排座椅 分析:根据题意,定义结构体将行列序号和需求度联系起来,最重要的是想到需求度,当纵坐标相等时,两个点就是挨着的,就比较两者的横坐标哪个小,横坐标小的那个点需求度加一,反之同理。然后先根据需求度排序,再根据横纵坐标序号排序,最后输出有需求度的序号。 #include
阅读全文
摘要:[2011年NOIP普及组] 瑞士轮 分析:根据题意,定义结构体,将选手的序号,初始分数,实力值联系起来,在最开始先给数据排个序,跟据题意手打排序。在此我们要注意一个问题,我们已经按照分数排成有序的,那么前面的人分数一定比后面的人高,赢的人都+1,所以每次先赢的人总会在后赢的人前面,输的相同,因此我
阅读全文
摘要:[2009年NOIP普及组] 分数线划定 分析:根据题意,定义结构体将序号与成绩联系起来,这时sort函数排序不符合题意,需根据题意手打排序,根据题目给出的条件求人数和分数线,还需注意的一点是,如果有人的成绩等于分数线,那么也把他算进人数中,需要加个for循环过一遍入围人选,再用if语句判断即可。
阅读全文
摘要:1. [2006年NOIP普及组] 明明的随机数 l 分析:根据题意,设置一个标记数组和一个计数器,用for语句将数过一遍,将第一次出现的数标记为一,计数器加一,输出计数器就是不同随机数的个数,再用for语句将指定范围内的数过一遍,将其中已标记的数输出。 1 #include<cstdio> 2 #
阅读全文
摘要:3.[2007年NOIP普及组] 奖学金 l 分析:根据题意,定义结构体,学号与成绩联系起来,在sort函数的基础上根据题意写一个排序函数(主要是if的应用),最后输出前五名。 l #include<cstdio> #include<iostream> #include<algorithm> usi
阅读全文