自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

ZSQ

新的一天,新的不会

  • 博客(64)
  • 收藏
  • 关注

原创 HDU 6118 度度熊的交易计划(最小费用可行流)

Description度度熊参与了喵哈哈村的商业大会,但是这次商业大会遇到了一个难题:喵哈哈村以及周围的村庄可以看做是一共由nn个片区,mm条公路组成的地区。由于生产能力的区别,第ii个片区能够花费a[i]a[i]元生产11个商品,但是最多生产b[i]b[i]个。同样的,由于每个片区的购买能力的区别,第ii个片区也能够以c[i]c[i]的价格出售最多d[i]d[i]个物品。由于

2017-09-28 21:56:20 493

原创 HDU 6116 路径计数(组合数学+NTT)

Description一个包含四个点的完全图,可以在任意节点出发,可以在任意节点结束,给出每个点被经过的次数,求有多少种合法的遍历序列。如果两个序列至少有一位是不同的,则认为它们不相同。样例: 1 2 1 0ABCB BABC BACB BCAB BCBA CBABInput多组数据。 对于每一组数据: 第一行四个数,分别表示4个点被经过的次数(每个数小于等于1

2017-09-28 21:48:19 1218 1

原创 HDU 6115 Factory(在线倍增LCA)

Description我们将AA省简化为由NN个城市组成,某些城市之间存在双向道路,而且AA省的交通有一个特点就是任意两个城市之间都能通过道路相互到达,且在不重复经过城市的情况下任意两个城市之间的到达方案都是唯一的。聪明的你一定已经发现,这些城市构成了树这样一个结构。现在百度陆续开了许许多多的子公司。每家子公司又会在各城市中不断兴建属于该子公司的办公室。由于各个子公司之间经常有资源的流动,所以公司员

2017-09-28 21:28:52 455

原创 HDU 6114 Chess(组合数学)

Description車是中国象棋中的一种棋子,它能攻击同一行或同一列中没有其他棋子阻隔的棋子。一天,小度在棋盘上摆起了许多車……他想知道,在一共N×MN×M个点的矩形棋盘中摆最多个数的車使其互不攻击的方案数。他经过思考,得出了答案。但他仍不满足,想增加一个条件:对于任何一个車AA,如果有其他一个車BB在它的上方(車BB行号小于車AA),那么車AA必须在車BB的右边(車AA列号大于車BB)。现在要问

2017-09-28 17:21:41 504

原创 HDU 6113 度度熊的01世界(dfs)

Description度度熊是一个喜欢计算机的孩子,在计算机的世界中,所有事物实际上都只由00和11组成。现在给你一个n∗mn*m的图像,你需要分辨他究竟是00,还是11,或者两者均不是。图像00的定义:存在11字符且11字符只能是由一个连通块组成,存在且仅存在一个由00字符组成的连通块完全被1所包围。图像11的定义:存在11字符且11字符只能是由一个连通块组成,不存在任何00字符组成的连通块被11

2017-09-28 17:17:47 314

原创 HDU 6112 今夕何夕(水~)

Description今天是20172017年88月66日,农历闰六月十五。小度独自凭栏,望着一轮圆月,发出了“今夕何夕,见此良人”的寂寞感慨。为了排遣郁结,它决定思考一个数学问题:接下来最近的哪一年里的同一个日子,和今天的星期数一样?比如今天是88月66日,星期日。下一个也是星期日的88月66日发生在20232023年。小贴士:在公历中,能被44整除但不能被100100整除,或能被400400整除

2017-09-28 16:58:14 458 1

原创 HDU 6110 路径交(线段树+在线倍增LCA)

Description给定一棵nn个点的树,以及mm条路径,每次询问第LL条到第RR条路径的交集部分的长度(如果一条边同时出现在22条路径上,那么它属于路径的交集)。Input第一行一个数nn(n<=5⋅105)(n<=5\cdot 10^5)接下来n−1n-1行,每行三个数x,y,zx,y,z,表示一条从xx到yy并且长度为zz的边 第n+1n+1行一个数mm(m<=5⋅105)(m<=5\cd

2017-09-28 16:53:07 681

原创 HDU 6109 数据分割(并查集+set+在线倍增法)

Description小ww来到百度之星的赛场上,准备开始实现一个程序自动分析系统。这个程序接受一些形如xi=xjxi=xj或xi≠xjxi≠xj的相等/不等约束条件作为输入,判定是否可以通过给每个ww赋适当的值,来满足这些条件。输入包含多组数据。 然而粗心的小ww不幸地把每组数据之间的分隔符删掉了。 他只知道每组数据都是不可满足的,且若把每组数据的最后一个约束条件去掉,则该组数据是可满足的。请

2017-09-28 16:35:20 503

原创 HDU 6108 小C的倍数问题(数学)

Description根据小学数学的知识,我们知道一个正整数xx是33的倍数的条件是xx每一位加起来的和是33的倍数。反之,如果一个数每一位加起来是33的倍数,则这个数肯定是33的倍数。现在给定进制PP,求有多少个BB满足PP进制下,一个正整数是BB的倍数的充分必要条件是每一位加起来的和是BB的倍数。Input第一行一个正整数TT表示数据组数(1≤T≤20)(1\le T\le20)。接下来TT行,

2017-09-28 16:17:39 379

原创 HDU 6121 Build a tree(递归)

Description给出一个满kk叉树的点数nn,第ii个点的父亲是⌊i−1k⌋\lfloor \frac{i-1}{k}\rfloor ,第ii个点的权值为以该点为根的子树点数,问这nn个点的权值异或和Input第一行一整数TT表示用例组数,每组用例输入两个整数nn和kk(1≤T≤5,1≤n,k≤1018)(1\le T\le 5,1\le n,k\le 10^{18})Output输出nn个点

2017-09-28 11:21:24 309

原创 HDU 6122 Color the chessboard(机智)

Description一个n∗mn*m的棋盘,上面有三种棋子BB,RR和??,??可以变成BB或RR,问有多少中合法的赋值方案使得任意一个偶行偶列的子矩阵中BB的数量和RR的数量相同Input第一行一整数TT表示用例组数,每组用例首先输入两个整数nn和mm表示棋盘行列数,之后输入一个n∗mn*m的字符矩阵表示该棋盘(1≤T≤5,1≤n,m≤103)(1\le T\le 5,1\le n,m\le 1

2017-09-28 10:42:52 361

原创 HDU 6124 Euler theorem(数论)

Description给定一非负整数aa,问a%ba\%b有多少种可能取值Input第一行一整数TT表示用例组数,每组用例输入一整数aa(1≤T≤5,1≤a≤109)(1\le T\le 5,1\le a\le 10^9)Output输出a%ba\%b有多少种取值Sample Input2 1 3Sample Output2 3Solution一.b>ab>a时,a%b=aa\%b=a二.1≤

2017-09-28 10:24:07 361

原创 HDU 6125 Free from square(数论+状压DP)

Description从11到nn中选取kk个不同的数字使得乘积为无平方因子数,问方案数Input第一行一整数TT表示用例组数,每组用例输入两个整数nn个kk(1≤T≤5,1≤n,k≤500)(1\le T\le 5,1\le n,k\le 500)Output对于每组用例,输出方案数,结果模109+710^9+7Sample Input2 4 2 6 4Sample Output6 19So

2017-09-28 10:03:18 396

原创 HDU 6126 Give out candies(最小割-Dinic)

Description有nn个人,给每个人分11~mm个糖果,有kk个限制,每个限制给出x,y,zx,y,z,表示第xx个人分到的糖数减去第yy个人分到的糖数不大于zz,给第ii个人jj颗糖获得的满意度为wi,jw_{i,j},问总满意度最大值Input第一行一整数TT表示用例组数,每组用例首先输入三个整数n,m,kn,m,k表示人数,糖数和限制数,之后一个n∗mn*m的矩阵wi,jw_{i,j}为

2017-09-26 16:47:54 558

原创 HDU 6127 Hard challenge(计算几何)

Description给出二维平面nn个点的坐标(xi,yi)(x_i,y_i)和权值valival_i,保证任意两点不重复且连线不经过原点,经过原点但不经过这nn个点中任一点的直线,定义得分为这条直线两边点点权和的乘积,问最大得分Input第一行一整数TT表示用例组数,每组用例首先输入一整数nn表示点数,之后nn行每行输入三个整数xi,yi,valix_i,y_i,val_i表示点的坐标和权值(1

2017-09-26 16:24:42 353

原创 HDU 6129 Just do it(机智)

Description给出一个序列a1,2,...,na_{1,2,...,n},每次操作对该序列求一遍异或前缀和,问mm次操作后的序列Input第一行一整数TT表示用例组数,每组用例首先输入两个整数nn和mm分别表示序列长度和操作数,之后输入nn个整数a1,2,...,na_{1,2,...,n}(1≤T≤5,1≤n≤2⋅105,1≤m≤109,0≤ai≤230−1)(1\le T\le 5,1\

2017-09-26 16:12:29 320

原创 HDU 6130 Kolakoski(水~)

Description定义一种序列1,2,2,1,1,2,1,2,2,1,2,2,1,1,2,1,1,2,2,1,…..,问这个序列第nn项Input第一行一整数TT表示用例组数,每组用例输入一整数nn(1≤T≤5,1≤n≤107)(1\le T\le 5,1\le n\le 10^7)Output输出这个序列的第nn项Sample Input212Sample Output12Solution前三

2017-09-26 15:58:37 319

原创 HDU 6133 Army Formations(树状数组)

Description给出一棵nn个节点的二叉树,11为根节点,第ii个点的点权为viv_i,对于一个点,设以其为根的子树有mm个节点,其花费定义为这mm个节点的权值与1,...,m1,...,m的点乘,问每个点的最小花费Input第一行一整数TT表示用例组数,每组用例首先输入一整数nn表示树上节点数,之后输入nn个整数viv_i表示第ii个点的权值,之后n−1n-1行每行两个整数u,vu,v表示一

2017-09-26 15:40:32 404

原创 HDU 6136 Death Podracing(优先队列+双向链表)

Description一个周长为LL的圆上有nn个点,第ii个点的位置为did_i(从起点开始沿顺时针方向的弧长长度),速度为viv_i(正值表示顺时针运动,负值表示逆时针运动),所有点的位置和速度均不相同,能量为ii,在运动过程中,如果两个点相遇,则能量值较小的点会被淘汰,问何时圆上只剩一个点Input第一行一整数TT表示用例组数,每组用例首先输入两整数nn和LL分别表示点数和圆的周长,之后输入n

2017-09-26 14:21:50 341

原创 HDU 6140 Hybrid Crystals(01背包)

Description给出一个序列的绝对值a[i]a[i]和其符号序列b[i]b[i],b[i]=Lb[i]=L表示a[i]a[i]是真实值,b[i]=Db[i]=D表示a[i]a[i]是真实值的相反数,b[i]=Nb[i]=N表示该值政正负均可,且a,ba,b序列满足ai≤∑j=1i−1aj[bj=N]+∑j=1i−1aj[bi=L∩bj=L]+∑j=1i−1[bi=D∩bj=D](2≤i≤n)a

2017-09-26 14:06:53 326

原创 HDU 6141 I am your Father!(最小树形图)

Description给出一个nn个点mm条边的有向图,求以11为根的最大费用有向树,在权值和相同的情况下选择nn节点的父亲节点编号最小的方案,要求输出最小费用和nn节点的父亲节点编号Input第一行一整数TT表示用例组数,每组用例首先输入两整数nn和mm分别表示点数和边数,之后mm行每行输入三个整数x,y,wx,y,w表示xx到yy有一条权值为ww的边(1≤n≤103,m≤104,1≤w≤100)

2017-09-26 13:42:46 486

原创 HDU 6143 Killer Names(容斥原理)

Description拿mm个不同的字符构造两个长度为nn的串,要求这两个串所用字母无交集,问方案数Input第一行一个整数TT表示用例组数,每组用例输入两个整数nn个mm (T≤10,1≤n,m≤2000)(T\le 10,1\le n,m\le 2000)Output输出方案数,结果模109+710^9+7Sample Input2 3 2 2 3Sample Output2 18Sol

2017-09-26 13:31:21 319

原创 HDU 6142 Jedi Council(最小割-Dinic)

Descriptionnn个值wiw_i,每个值要么是ww要么是−w-w,给出qq个限制,限制有三种:x y 0x\ y\ 0:wx≤wy :w_x\le w_yx y 1x\ y\ 1:wx=wy :w_x=w_yx y 2x\ y\ 2:wx<wy :w_x<w_y要求给出满足上述条件的赋值使得O=∑i=1nwi+∑i=1pHiO=\sum\limits_{i=1}^nw_i+\sum\limi

2017-09-26 11:12:02 432

原创 HDU 6137 Engineering of the Clones(快速幂+NTT)

Description给出一正整数AA的质因子分解形式A=pr11Pr22...prnnA=p_1^{r_1}P_2^{r_2}...p_n^{r_n},其中|ri−rj|≤1|r_i-r_j|\le1,问1A−1\frac{1}{A-1}在∏i=1npi\prod\limits_{i=1}^np_i进制下小数点后第kk位的值Input首先输入一整数TT表示用例组数,每组用例首先输入两整数nn和kk

2017-09-25 20:14:23 430

原创 HDU 6135 Casual Podracing(CDQ分治)

Description一个周长为LL的圆弧上面有nn个不重合的点,第ii个点距圆弧起点距离(圆上距离)为did_i,速度为viv_i(取逆时针为正方向,任意两点速度不同),能量为wiw_i,一个点会被标记当且仅当其在运动过程中与能量值大于其能量值的点相遇(一个点会被标记后会继续运动),问从什么时刻开始不会再有点会被标记Input第一行一整数TT表示用例组数,每组用例首先输入两个整数nn和LL表示圆上

2017-09-22 21:07:19 560

原创 HDU 4494 Teamwork(最大流-Dinic+最小费用最大流-mcmf)

Descriptionmm种工人,n−1n-1个工作,给出第ii个工作地点的坐标,开始时间,工作完成所需时间以及所需每种工人的数量,两个工作地点之间的距离定义为欧氏距离,工人速度为单位距离每单位时间,工人完成一个工作后如果在到达另一个工作地点时还没到开始时间即可继续工作,问至少要多少名工人才能完成这nn项工作Input第一行一整数TT表示用例组数,每组用例输入两整数nn和mm分别表示工作数量和工人数

2017-09-18 19:10:33 934

原创 HDU 6107 Typesetting(ST)

Description有NN个单词一个图片,第ii个单词有aia_i个字符,页面宽度可以容纳WW个字符,为了好看有以下约束:1.图片宽度是pwpw,图片左边距页面左边距离为dwdw,右边距页面距离W−pw−dwW-pw-dw2.单词和图片均不能重叠3.单词的先后顺序不能改4.一个单词不能跨行,要在同一行5.如果两个单词在同一行的连续位置,那么要用空格隔开6.最小化单词和图片所占行数给出QQ次查询,每

2017-09-09 14:29:22 500

原创 HDU 6106 Classes(水~)

Description有A,B,CA,B,C三个课程,NN个班的学生要选课,给出每个班选A,B,C,AB,BC,AC,ABCA,B,C,AB,BC,AC,ABC课程的学生人数,由于某些原因这些数据可能有错误,但是保证至少有一组数据是对的,问这NN个班中至少选一门课程的学生人数最大值Input第一行一整数TT表示用例组数,每组用例首先输入一整数NN表示班级数,之后NN行每行输入7个整数分别表示该班级选

2017-09-09 14:29:14 318

原创 HDU 6105 Gameia(博弈论+树形DP)

Description一棵树,初始时每个节点都没有被染色,BobBob有KK次机会在任意时刻一起或单独使用,每次可以切掉一条树边,游戏开始,AliceAlice和BobBob轮流对树染色,AliceAlice先来,当AliceAlice染色时,她可以选择任意一个没有染色的点将其染成白色,当BobBob染色时,他可以选择任意一个没有染色的点将其染成黑色,并将与这个点有边相连的点全部变成白色,让某个人无

2017-09-09 14:29:05 687

原创 HDU 6103 Kirinriki(尺取)

Description定义两个长度均为nn的字符串AA和BB的距离为disA,B=∑i=0n−1|Ai−Bn−1−i|dis_{A,B}=\sum\limits_{i=0}^{n-1}|A_i-B_{n-1-i}|,给出一个字符串SS,问SS的满足距离小于mm的两个等长不相交子串的长度最大值Input第一行一整数TT表示用例组数,每组用例首先输入一整数mm表示对SS的子串距离的限制,之后输入一个只有

2017-09-09 14:28:56 306

原创 HDU 6102 GCDispower(容斥原理+数论+树状数组)

Description给出一个11~NN的排列PP,MM次查询,每次查询给出一个区间[L,R][L,R],求∑i=LR∑j=i+1R∑k=j+1R[gcd(P[i],P[j])=P[k]]⋅P[k]\sum\limits_{i=L}^R\sum\limits_{j=i+1}^R\sum\limits_{k=j+1}^R[gcd(P[i],P[j])=P[k]]\cdot P[k]Input第一行一整

2017-09-09 14:28:42 699

原创 HDU 6117 打怪兽2(组合数学+优先队列)

Description度度熊在玩一个叫做“打怪兽”的游戏。游戏的规则是这样的。度度熊一开始会有一个初始的能量值。每次遇到一个怪兽,若度度熊的能量值≥ 怪兽的能量值并且度度熊剩余血量≥怪兽的攻击力,那么怪兽将会被打败,度度熊的能量值增加1,度度熊的血量减少该怪兽的攻击力,否则度度熊死亡(度度熊的血量刚好减到0时并不会死亡,还能继续战斗),游戏结束。若怪兽全部打完,游戏也将会结束。共有n个怪兽,由于度度

2017-09-09 12:47:25 948

原创 HDU 6097 Mindis(计算几何)

Description给出一个圆心为O(0,0)O(0,0),半径为rr的圆,并给出圆内两个距圆心等距的点P,QP,Q,要求在圆上找一个点DD,使得|PD|+|QD||PD|+|QD|最小,输出最小值Input第一行一个整数TT表示用例组数,每组用例首先输入一整数rr表示圆的半径,之后输入P,QP,Q两点的横纵坐标xp,yp,xq,yqxp,yp,xq,yq,保证|OP|=|OQ||OP|=|OQ|

2017-09-06 11:44:12 361

原创 HDU 6095 Rikka with Competition(水~)

Descriptionnn个人比赛,第ii个人的能力值是aia_i,ii和jj比赛,如果|ai−aj|≤K|a_i-a_j|\le K则两人均由机会赢,否则能力值高的人赢,每次随机选两个人比赛,输的淘汰,n−1n-1场比赛后赢者即为冠军,问有多少人有几率得到冠军Input第一行一整数TT表示用例组数,每组用例首先输入两个整数n,Kn,K,之后输入nn个整数aia_i表示每个人的能力值(1≤T≤100

2017-09-06 10:06:51 320

原创 HDU 6093 Rikka with Number(康托展开)

Description定义一个数KK是好数当且仅当存在d≥2d\ge 2使得KK在dd进制下有dd位且这dd位的值是一个00~d−1d-1的排列,给出一个区间[L,R][L,R],问该区间中有多少个好数,结果模998244353998244353Input第一行一个整数TT表示用例组数,每组用例输入两个十进制数L,RL,R(1≤T≤10,1≤L≤R≤105000)(1\le T\le 10,1\le

2017-09-06 09:58:26 569

原创 HDU 6092 Rikka with Subset(多重背包)

Description一个集合有nn个元素a1,...,na_{1,...,n},和为mm,现在给出B[i],i∈[0,m]B[i],i\in [0,m]表示该集合子集中和为ii的数量,要求重构出该集合Input第一行一整数TT表示用例组数,每组用例首先输入两个整数n,mn,m分别表示集合元素个数和集合总和,之后输入m+1m+1个整数B0,...,mB_{0,...,m}(1≤T≤70,1≤n≤50

2017-09-06 09:38:04 470

原创 HDU 6090 Rikka with Graph(构造)

Description定义一张图的权为任意两点之间最短路之和,如果两个点不互达则距离为nn ,问一个nn个点mm条边的图权的最小值Input第一行一整数TT表示用例组数,每组用例输入两个整数n,mn,m分别表示点数和边数(1≤T≤10,1≤n≤106,1≤m≤1012)(1\le T\le 10,1\le n\le 10^6,1\le m\le 10^{12})Output对于每组用例,输出一个答案

2017-09-06 09:20:05 258

原创 CodeForces 271 A.Beautiful Year(水~)

Description给出一整数nn,求大于nn的数字中满足每一位都不相同的最小数字Input一个正整数n(1000≤n≤9000)n(1000\le n\le 9000)Output输出大于nn的最小的满足条件的数字Sample Input1987Sample Output2013Solution水题,从n+1n+1开始一个个枚举判断是否合法即可Code#include<cstdio>#incl

2017-09-06 09:19:09 428

原创 CodeForces 136 A.Presents(水~)

Descriptionnn个人互相送礼,第ii个人送第pip_i个人礼物,每个人只会送出一份礼收到一份礼,问第ii个人收到的礼物是谁送的Input第一行一整数nn表示人数,之后nn个整数pip_i表示第ii个人送礼物对象(1≤n≤100)(1\le n\le 100)Output输出nn个整数,第ii个数表示送第ii个人礼物的人Sample Input42 3 4 1Sample Output4 1

2017-09-06 09:19:01 507

原创 CodeForces 208 A.Dubstep(水~)

Description给出一个字符串,两个单词之间会用若干个WUB分隔开,输出去掉WUB加好空格的字符串Input给出一个只由大写字母组成的字符串,串长不超过200Output输出处理后的字符串Sample InputWUBWEWUBAREWUBWUBTHEWUBCHAMPIONSWUBMYWUBFRIENDWUBSample OutputWE ARE THE CHAMPIONS MY FRIEND

2017-09-06 09:18:52 668

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除