清北考前刷题day5早安


/*
C(n,k)
*/
#include<iostream>
#include<cstdio>
#include<cstring> #define ll long long
#define N 1000007
#define M 1000000007 using namespace std;
ll n,k,ans,cnt1,cnt0;
ll inv[N]={,},fac[N]={,},f[N]={,}; inline ll read()
{
int x=,f=;char c=getchar();
while(c>''||c<''){if(c=='-')f=-;c=getchar();}
while(c>=''&&c<=''){x=x*+c-'';c=getchar();}
return x*f;
} inline void init()
{
for(int i=;i<=N;i++)
{
fac[i]=(fac[i-]%M*i%M)%M;
f[i]=((M-M/i)%M*f[M%i])%M;
inv[i]=(inv[i-]*f[i]%M)%M;
}
} inline ll C(ll a,ll b)
{
return fac[a]%M*inv[b]%M*inv[a-b]%M;
} int main()
{
freopen("cube.in","r",stdin);
freopen("cube.out","w",stdout);
n=read();k=read();init();
printf("%I64d\n",C(n,k));
return ;
}



/*
做最大生成树时标记哪些边被加了进去。然后把这些边排序。
如果询问权值w的货物,就在边中查找小于w的最大值假设拍第k大
答案就是k+1。 复杂度O(qlogn)
*/
#include<iostream>
#include<cstdio>
#include<cstring>
#include<algorithm> #define N 100007 using namespace std;
int n,m,q,ans,cnt,num;
int head[N],fa[N];
struct edge{
int u,v,w,net,pos;
bool operator < (const edge &a) const{
return w>a.w;
}
}e[N<<],E[N],tmp[N<<]; inline int read()
{
int x=,f=;char c=getchar();
while(c>''||c<''){if(c=='-')f=-;c=getchar();}
while(c>=''&&c<=''){x=x*+c-'';c=getchar();}
return x*f;
} inline void add(int u,int v,int w)
{
e[++cnt].u=u;e[cnt].v=v;e[cnt].w=w;
e[cnt].net=head[u];head[u]=cnt;
} int find(int x){return fa[x]==x?x:fa[x]=find(fa[x]);} void kruskal()
{
int r1,r2;
sort(E+,E+m+);
for(int i=;i<=m;i++)
{
r1=find(E[i].u),r2=find(E[i].v);
if(r1==r2)continue;
fa[r1]=r2;num++;
add(E[i].u,E[i].v,E[i].w);add(E[i].v,E[i].u,E[i].w);
tmp[num].pos=num;tmp[num].u=E[i].u,tmp[num].v=E[i].v;tmp[num].w=E[i].w;
if(num==n-) break;
}
} int serch(int x)
{
int l=,r=n-,mid;
while(l<=r)
{
mid=l+r>>;
if(tmp[mid].w>=x) l=mid+;
else ans=mid,r=mid-;
}return num-ans+;
} int main()
{
freopen("warehouse.in","r",stdin);
freopen("warehouse.out","w",stdout);
int x,y,z,k;
n=read();m=read();q=read();
for(int i=;i<=n;i++) fa[i]=i;
for(int i=;i<=m;i++)
{
E[i].u=read();E[i].v=read();E[i].w=read();
}kruskal();
for(int i=;i<=q;i++)
{
x=read();
if(x<=e[cnt].w){printf("1\n");continue;}
if(x>e[].w){printf("%d\n",n);continue;}
k=serch(x);
printf("%d\n",k+);
}
return ;
}



清北考前刷题day5早安的更多相关文章
- 清北考前刷题day4早安
LI /* 没有考虑次大值有大于一个的情况 */ #include<iostream> #include<cstdio> #include<cstring> # ...
- 清北考前刷题day7早安
- 清北考前刷题day6早安
#include<iostream> #include<cstdio> #include<cstring> #include<algorithm> #d ...
- 清北考前刷题day2早安
/* 做法一:按h sort一遍,对于一段区间[i,j],高度花费就是h[j]-h[i] 然后枚举区间,把区间内C排序,一个一个尽量选即可. n^3logn 标算:n^3 dp 高度排序,保证从前往后 ...
- 清北考前刷题day1早安
立方数(cubic) Time Limit:1000ms Memory Limit:128MB 题目描述 LYK定义了一个数叫“立方数”,若一个数可以被写作是一个正整数的3次方,则这个数就是立方数 ...
- 清北考前刷题day1下午好
水题(water) Time Limit:1000ms Memory Limit:128MB 题目描述 LYK出了道水题. 这个水题是这样的:有两副牌,每副牌都有n张. 对于第一副牌的每张牌长和宽 ...
- 清北考前刷题da7下午好
三向城 /* 原图一定是一棵完全二叉树. 根节点是x,左节点是x*2,右节点是x*2+1 转化为二进制往左右走就很明显了. */ #include<iostream> #include&l ...
- 清北考前刷题day6下午好
/* 贪心 负数一定不取 枚举最高位是1 且答案取为0的 位置, 更新答案. */ #include<iostream> #include<cstdio> #include&l ...
- 清北考前刷题da5下午好
/* (4,1)*(3,1)*(2,1)的话1变成2然后一直是2 2变成1然后变成3 3变成1然后变成4 4变成1 */ #include<iostream> #include<cs ...
随机推荐
- Open DBDiff 0.9
SQL Server 迁移过程经常会的出现,需要比对两个数据库之间,或者是表之间到底有何不同 SQL server 自带的tablediff Utility 是一个命令行的工具,对于偶尔需要做一次的体 ...
- HDU 4745 最长回文子序列
题目大意 两只青蛙朝不同方向条,每次都到达值相同的位置,不能重复到达自己到过的地方,且不能飞跃已到过的地方 我们可以理解为这两只青蛙分别把整个序列遍历了一遍,依次走过所有的点,找到最多相同的点的个数, ...
- [luoguP1136] 迎接仪式(DP)
传送门 每个字母只有两种选择,变成另一个或者不变. 所以f[i][j][k]表示前i个字母有j个j变成z,有k个z变成j 只需要比较j==k时的答案就行 #include <cstdio> ...
- 【BZOJ4559】成绩比较(组合计数,容斥原理)
题意: G系共有n位同学,M门必修课.这N位同学的编号为0到N-1的整数,其中B神的编号为0号.这M门必修课编号为0到M- 1的整数.一位同学在必修课上可以获得的分数是1到Ui中的一个整数.如果在每门 ...
- CentOS7使用mount命令来挂载CDROM
https://blog.csdn.net/testcs_dn/article/details/41448557
- 博弈论入门题 kiki's game
Problem Description Recently kiki has nothing to do. While she is bored, an idea appears in his mind ...
- 洛谷 P3609 [USACO17JAN]Hoof, Paper, Scissor蹄子剪刀…
P3609 [USACO17JAN]Hoof, Paper, Scissor蹄子剪刀… 题目背景 欢迎提供翻译,请直接在讨论区发帖,感谢你的贡献. 题目描述 You have probably hea ...
- Nginx与HAProxy的区别
对于做软负载,我们都知道主流的方案有LVS.Haproxy.Nginx!那么对于Haproxy和Nginx,我们如何选择呢?回答这个问题之前,我根据个人使用经验来讲下它们的特点! Haproxy特点 ...
- bzoj 1266 [AHOI2006] 上学路线 route 题解
转载请注明:http://blog.csdn.net/jiangshibiao/article/details/23989499 [原题] 1266: [AHOI2006]上学路线route Time ...
- MAVEN项目模块化
maven的最大的特点之中的一个就是能够把项目模块化. 前面的一篇文章MAVEN创建并打包web项目已经创建了一个简单的webapp,注意这个webapp的打包方式是war. 假设如今又要划分出来一个 ...
