随笔分类 - ACM——比赛
摘要:A :Rescue The Princess题意:给你平面上的两个点A,B,求点C使得A,B,C逆时针成等边三角形。思路:http://www.cnblogs.com/E-star/archive/2013/06/11/3131563.html 向量的旋转。直接套公式就行,或者我们可以找到等式解一个二元一次方程然后向量判断方向即可。我比较懒,就写了向量旋转的。#include #include #include #include #include #include #include #include #include #include #include ...
阅读全文
摘要:http://acm.hdu.edu.cn/listproblem.php?vol=361:小Q系列故事——屌丝的逆袭思路:和省赛的那个题目类似,只要模拟一下就好...View Code #include <iostream>#include <cstdio>#include <cmath>#include <vector>#include <cstring>#include <algorithm>#include <string>#include <set>#include <functio
阅读全文
摘要:官方解题报告:http://page.renren.com/601081183/note/8672549111001Number Sequence 容斥定理+组合数hduhttp://acm.hdu.edu.cn/showproblem.php?pid=4390题意:给你b1,b2,...bn个数,求存在多少个这样的序列a1,a2,a3....an满足a1*a2*a3*a3...an = b1*b2...*bn; ai>1思路:首先多谢日华兄热心的给我讲解,现在算是明白点了吧。a1*a2...*an = sum;我们首先将sum的所有质因子分解出来,然后就是将质因子分配到N个ai里面求有
阅读全文
摘要:官方解题报告:1001 hdu 4370http://acm.hdu.edu.cn/showproblem.php?pid=4370题意:给你一个n*n的矩阵,求另一个矩阵满足如下条件:1.X12+X13+...X1n=12.X1n+X2n+...Xn-1n=13.for each i (1<i<n), satisfies ∑Xki(1<=k<=n)=∑Xij(1<=j<=n).使得∑Cij*Xij(1<=i,j<=n) 最小,官方解题报告已经很完善这里不再罗嗦,只是强调一下在自己出现的错误:1:这里分别得到由1,n出发的环视如果不存在返回的都是
阅读全文
摘要:官方解题报告http://page.renren.com/601081183/note/865145486?null&ref=minifeed&sfet=2011&fin=0&ff_id=601081183&feed=page_reblog&tagid=1981432999&statID=page_601081183_2&level=21001 hdu 4350Cardhttp://acm.hdu.edu.cn/showproblem.php?pid=4350题意:给定52张牌,按顺序排列着,给出操作每次讲下表为[l,r]的牌一道
阅读全文
摘要:1004 hdu 4334http://acm.hdu.edu.cn/showproblem.php?pid=4334题意:给定五个集合,从五个集合中分别取出5个数,如果存在满足a1 + a2 + a3 + a4 +a5 == 0 输出yes,否则no; 集合的大小小于200 ai的取值为[-10^15, 1 0^15]思路:开始的时候O(n^2)求出前两个集合的所有可能的和,然后O(n^3)+二分log(10^4)做,结果竟然tle。。坑爹啊。。。。最后用了hash过的。好像poj有个类似的题目,也是hash做的。hash开散列两种实现方式,挂链:View Code #include <
阅读全文
摘要:1001 hdu 4320 http://acm.hdu.edu.cn/showproblem.php?pid=4320题意:V写下一个A进制的任意有限小数,如果S能将其翻译成B进制的有限小数,则S赢,输出Yes 否则V赢输出No;思路:只要A的所有质因子都包含在B中,S就能赢(证明没看懂!!求指教)这里注意:(N表示A,B的极限值)1:一个数i的质因子,至多只会存在一个大于sqrt(i)的。所以这里我们只要枚举出小于sqrt(N)的所有质数即可,然后用所有小于sqrt(j)的质数来查找j的质因子,同时j也要做相应的除法把枚举道德质因子除去,当枚举完所有小于sqrt(j)质数时,j如果>
阅读全文
摘要:话说这次比赛做的叫一个纠结啊,各种粗心的错误,输入数据搞倒了,数组开的大小搞倒了,纠结死了。哎...粗心啊!!!wa致死才检查出这种粗心的错误。。hdu4301 http://acm.hdu.edu.cn/showproblem.php?pid=4310题意:官方是状态压缩dp,我按比率排了个序贪心的选择,险过。View Code #include <iostream>#include <cstdio>#include <algorithm>#define maxn 22using namespace std;struct node{ int d,h; do
阅读全文
摘要:密码:1234561001http://acm.hdu.edu.cn/diy/contest_showproblem.php?pid=1001&cid=16288&hide=0模拟题目,不过在pos赋初值的时候弄错了,我的pos要的到的值是0-n-1而我给赋值成0了,因为我要用它来判断。所以纠结了老久了才检查到。这种错误很难找的。提醒一下自己认真!View Code #include <cstdio>#include <cstring>#include <iostream>#define maxn 5007using namespace st
阅读全文
摘要:http://ac.jobdu.com/problem.php?pid=1421第一题:题意就是给定n个点每个点可能带表Female或者Male,以及给出各个节点的关系矩阵,让你求出现AbOr的期望,、AbOr这样定义:1:必须是Male;2:他至少有m个Female朋友;刚开始我一直以为求的是AbOr出现的概率,所以显示按每个节点两种状态(F ,M)爆搜所有可能的情况然后除以总的可能(2^N)样例竟然都过了,提交直接TLE因为本菜没有注意到T = 10000 这样复杂度就成了10^4*2^20了,指定超时。后来想到了循环每个节点,然后检查他的哦鞥有节点只有他的朋友节点大于m 才有可讨论性,假
阅读全文
摘要:发现省赛之后自己变懒了唉,现在就做了这几个先写一些吧:热身赛:http://acm.sdut.edu.cn/sdutoj/problem.php?action=showproblem&problemid=2404求Super Prime,打个表就能过:#include <iostream>#include <cstring>#include <cstdio>#define maxn 100017using namespace std;int p[maxn],isp[maxn];bool hash[maxn];int len;void init(){
阅读全文
摘要:http://acm.hdu.edu.cn/webcontest/contest_show.php?cid=21031001:给定n个牛的身高hi,求用最少的牛累计达到>= b(书架的高度)。看完题给我的第一印象是01背包,可是20000*10000数据太大,果断贪心从大到小排序即可,悲催的是循环里面的循环变量忘++了,这么低级错误,让老衲情何以堪啊!!丢人啊!!1002:这道题纠结死人了,先求出总高度sum = a[0] + a[1] ....,然后对剩余的高度sum - b进行01背包,求差即可。如果数组开到极限果断就会mle。。。气死我了,我稍微份放小了一下竟然会A了,唉。赛后问了
阅读全文
摘要:今天的比赛做的很纠结,该反思一下自己为什么做的这么烂了,约瑟夫环的那个问题,反映出自己掌握知识不够全面,只要我们知道那个证明实现起来就很轻松了,可是如果不知道的话就会被卡了。Run Length Encoding这道题题意读的很是晕,迷迷糊糊就把代码完了,自己还出了好几组数据测试都过,一交还是wa,原来自己把题意理解错了,其实这道题的叙述真的很理解的。All Discs Considered这道题没读懂题意,自己猜的是拓扑排序,可是比赛时卡到那几个题了所以就没写,后来自己读了几遍题意,想了想还是不知道该怎么写,最后还是搜了一下解题报告才出来的。。。就看了这几道题。。。1:自己的知识面太狭隘;2
阅读全文
摘要:今天下午航电的比赛,我没注意,下午两点多才来实验室。只是做了几道水题。4229就是给定那个a,b,c,d四个非负整数数,分别用|a-b| |b-c| |c-d| |d-a| 来代替,计算直到 a= = b == c == d为止求出一共需要多少步,这题幸亏给出了It turns out that in all cases, the sequence converges very quickly. In fact, it can be shown that if all four integers are less than 2^n, then it will take no more than
阅读全文
摘要:http://acm.hdu.edu.cn/webcontest/contest_show.php?cid=18871001:将一个数转化成-2进制的数,同样对这个数模-2倒取于,分清正数与负数,两种不同的情况;View Code1002:DFS;给的数据很小所以暴力就可以过,首先求出n个字符串的全排列,然后检查是否可以连接,求最后的长度,枚举出最小的值。在这里又犯了个不可原谅的小错误。。唉。细心。。View Code1003:字典树;每个点减去空格的ASSIC码,(应为空格的ASIIC吗最小),然后插入,查找。View Code1004:贪心;可以想象成上升沿与下降沿,求顶峰的值,中间的细节
阅读全文
摘要:http://acm.hdu.edu.cn/vcontest/vtl/problemlist/showproblemlist/vtlid/33671009 原来比赛做过的一个题目,由于最近写了几个字典树的题目,所以我对每个姓名编号的时候用字典树写的可是不知道哪里出了错误,老是wa弄得整个比赛的心情一团糟,最后我直接暴枚举力标号,已提交a了。。郁闷啊。。。思路:输入A找与A有公共朋友最多的B,如果和A有公共朋友最多且相等的话就按字典序输出。。注意:在找A的后继的后继B时,1:B不能是A本身:2:也不能是A的直接朋友。相当于一个模拟找的过程。。View Code #include <iost
阅读全文
摘要:http://acm.hdu.edu.cn/contests/contest_show.php?cid=392我们还是很水啊。。。。加油感觉今天的题都挺难的,我和von一起组队做的,就出了两道题。郁闷啊。。A:没看B:前5道是von负责的,由于前几天做过一道优先队列的bfs所以von很快就1Y了。orz..赛后自己也敲了一下1Y:代码:View Code #include <cstdio>#include <cstring>#include <iostream>#include <queue>#define maxn 507using names
阅读全文
摘要:A:bfs+优先队列。。。。第一天只能感染defence小于等于1的并且与之连接的机器,第二天只能感染defence小于等于2的并且与之连接的机器.。。。。。依次往后推。View Code #include <cstdio>#include <cstring>#include <iostream>#include <queue>#define maxn 505using namespace std;int g[maxn][maxn],ct[maxn*maxn];int dir[4][2] = {{0,1},{0,-1},{1,0},{-1,0}}
阅读全文
摘要:http://acm.sdut.edu.cn/web/contest_show.php?contest_id=1097A题:(字符串问题)就是给定字典。然后查找错误。分三种情况1:One letter is missing (e.g.,letteris writtenleter)or too much (e.g.,letteris writtenlettter).2:One letter is wrong (e.g.,letteris writtenketter)3:The order of two adjacent letters is wrong (e.g.,letteris writte
阅读全文
摘要:A:http://acm.sdut.edu.cn/web/problem.php?action=showproblem&problemid=2216polla队长很快就做出来了。本以为是水题,可是今天看了看,也不是那么水。orz之。。自己刚开始把题意给理解错了,以为只有IXCM可以重复出现,其他只能出现一次,而且IXC只能出现三次。愚蠢啊。。。题意是给你罗马数字然后你求和后再输出罗马数字,rule里面的第二条我给理解错了。其实就是说明出现减式时只能是连续的两个其组合是I (X,C) X(L,C) C(D,M)其实根据后一个不能大于前一个的10被就能推出这个组合。。。然后 IX = 4
阅读全文