博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
洛谷 P1309 瑞士轮 题解
阅读量:5149 次
发布时间:2019-06-13

本文共 1102 字,大约阅读时间需要 3 分钟。

每日一题 day4 打卡

Analysis

暴力+快排(其实是归并排序)

一开始天真的以为sort能过,结果光荣TLE,由于每次只更改相邻的元素,于是善于处理随机数的快排就会浪费很多时间。于是就想到归并排序:归并排序的思想就是合

并两个同序数组的线性方式——每次比较两个有序数组指针指向的值,谁更小(大)则放到temp数组里,然后删掉进入temp的元素,指针++。然而我并没有实现,先把

快排水过的代码放上来,等有时间学归并排序了再来改。

1 #pragma GCC optimize(2) 2 #include
3 #include
4 #include
5 #include
6 #define maxn 100000+10 7 using namespace std; 8 inline int read() 9 {10 int x=0;11 bool f=1;12 char c=getchar();13 for(; !isdigit(c); c=getchar()) if(c=='-') f=0;14 for(; isdigit(c); c=getchar()) x=(x<<3)+(x<<1)+c-'0';15 if(f) return x;16 return 0-x;17 }18 inline void write(int x)19 {20 if(x<0){putchar('-');x=-x;}21 if(x>9)write(x/10);22 putchar(x%10+'0');23 }24 int n,r,q; 25 struct node 26 {27 int num,s,w;28 }x[2*maxn];29 inline bool cmp(node a,node b)30 {31 if(a.s!=b.s) return a.s>b.s;32 else return a.num
x[i-1].w) x[i].s+=1;45 else if(x[i].w

请各位大佬斧正(反正我不认识斧正是什么意思)

转载于:https://www.cnblogs.com/handsome-zyc/p/11355234.html

你可能感兴趣的文章
【更新】智能手机批量添加联系人
查看>>
NYOJ-128前缀式计算
查看>>
centos6.7 配置外网端口映射
查看>>
淡定,啊。数据唯一性
查看>>
深入理解 JavaScript 事件循环(一)— event loop
查看>>
Hive(7)-基本查询语句
查看>>
Redis快速入门
查看>>
注意java的对象引用
查看>>
C++ 面向对象 类成员函数this指针
查看>>
inline函数的总结
查看>>
Python字符编码
查看>>
leetcode 49. 字母异位词分组(Group Anagrams)
查看>>
NSPredicate的使用,超级强大
查看>>
自动分割mp3等音频视频文件的脚本
查看>>
财务结算的目的和一般流程
查看>>
判断字符串是否为空的注意事项
查看>>
布兰诗歌
查看>>
老李分享:5个衡量软件质量的标准
查看>>
Xcode部分插件无法使用识别的问题
查看>>
set学习记录
查看>>