ACM成长之路
US10152130155
ACMer
展开
-
C++输入输出外挂
利用fread()函数进行优化,一般用于超大型输入文件比如hdu 6044#include // #define test TEST using namespace std;const int mod=1e9+7;const int maxn=1e6+6;typedef long long ll;namespace IO {#define BUF_SIZE 100000//fre原创 2017-07-27 11:10:02 · 834 阅读 · 0 评论 -
CodeForces #426 div2 B The Festive Evening
比赛的时候先做的C题,最后三十分钟才看这道题。其实这是一道比较简单的题,只是我当时想复杂了处理一下每个门的开关时间,然后就转化为n条线段中最大重叠线段的数目,可以用贪心策略去解决,与活动安排问题类似,这个思路是对活动结束时间排序。#include using namespace std;typedef long long ll;const int maxn=1e6+6;cha原创 2017-07-31 11:22:41 · 227 阅读 · 0 评论 -
2017 多校训练第五场 HDU 6092 Rikka with Subset
很多个较小的数字可以随机组合成较大的数字,所以B数组从小到大开始遍历,除了空集,最小的那个存在的个数对应的数字必然是a数组中的数字。每求出这一部分之后,更新后续的B序列。分析完后,主要的难点就是怎么去让已求出来的A序列随机组合,更新后续的B序列直接减就可以了。看成01背包问题,让m为背包去装 i,初始值为dp[0] = 1,由于i依次增大,A子集随机组合不会重复。#include原创 2017-08-08 21:53:50 · 420 阅读 · 0 评论 -
POJ 2236 wireless network
最近的训练,这道题是kuangbin神的并查集专题的A题。前路漫漫,且行且珍惜。#include #include #include #include #include #include #include #include using namespace std;const int maxn=1005;typedef struct Node{ int原创 2016-11-22 10:55:21 · 325 阅读 · 0 评论 -
暑假训练随笔
七月的流火好像还在灼烧着上海,八月的微风已稍有显露好吧。。。不扯了。。。现在多校训练已经进行到一小半了,但是自己赛场上做不出来好气,比赛完补题不会更生气,就这样循环往复过了半个暑假了。哎,每个学期开头都是雄心壮志要好好做人,结果到了后面总是难有一个好的结果。想想ACM对我也差不多有了两年了,大一的什么都不会,那个时候的多校自然是无所谓,然而现在马上要大三了,还没有拿到一块牌子。。。原创 2017-08-04 00:01:34 · 254 阅读 · 0 评论 -
求组合数的几种方式
逆元求组合数void init(){ fac[0]=1; for(int i=1;i<maxn;i++){ fac[i]=fac[i-1]*i%mod; } inv[1]=1; for(int i=2;i<maxn;i++){ inv[i]=(mod-mod/i)*inv[mod%i]%mod; } inv[0]=1; for(int i=1;i<maxn;i++){原创 2017-07-27 00:16:41 · 437 阅读 · 0 评论 -
POJ 2823 Sliding Window
单调队列实现询问最小值与最大值#include #include #include #include #include using namespace std;const int maxn=1e6+6;int a[maxn],b[maxn],c[maxn],que[maxn],pos[maxn];int n,k;void Get_min(){//单调队列求每连续k个数的最原创 2017-07-27 23:35:48 · 242 阅读 · 0 评论 -
2017 多校训练第二场 HDU 6047 Maximum Sequence
这一题真是累死我了,比赛的时候搞了一个树状数组结果TLE,最后还是队友写了一个线段树才过的,不就是树状数组多了一个logn嘛TAT,还有的大佬要是再卡一个常数,线段树可能都过不了TAT等到下来补题的时候,单调队列不懂怎么做TAT,就开始搞线段树,我觉得写得很对啊怎么又错了TAT,好吧换一种写法,看到有一种优先队列的写法,正确性自己想了想就写了,然后交上去还是错的TAT,怎么回事啊啊啊啊啊TAT原创 2017-07-28 15:19:56 · 378 阅读 · 0 评论 -
重要逆序对
普通的逆序对就不详细讲了,此时计数的顺序关系和排序的顺序关系是等价的。而对于重要的逆序对来讲,原来的排序顺序并不能够反应计数的顺序,因此计数与排序的顺序要分开。思想还是与普通逆序对类似。#include <iostream>#include <string>#include <algorithm>#include <cstdio>#...原创 2018-08-14 18:49:51 · 1610 阅读 · 0 评论