摘要: 距离大一入学已经经过了两年半的时间,离我第一次接触C语言也过去了两年半。向王瑞洲(以下简称GodWang)请教字符串的读入、01背包的情景还历历在目,弹指一挥间,如今已是大三。 在高考结束的时候,莫名其妙的只想填计算机类的专业,也许是出于对编程的好奇,又或许是觉得会编程的人特别帅。在纠结了很久是选择阅读全文
posted @ 2016-12-21 12:43 Fighting_Heart 阅读(93) 评论(0) 编辑
摘要: 从命题环节开始记起吧,踩气球部分放在后半段压轴。 大约$20$天以前,那天早上我刚下火车,得知今年比赛命题组组长是$xiang578$,老师发的命题人员名单中并没有我。出于对命题工作的好奇与热爱,我向组长申请了一个名额,组长也大方的同意了,在此向组长表示衷心的感谢。由于$OJ$排版不好看,决定本次题阅读全文
posted @ 2016-12-03 23:07 Fighting_Heart 阅读(75) 评论(0) 编辑
摘要: 博客园中数学公式的使用阅读全文
posted @ 2016-08-22 17:35 Fighting_Heart 阅读(163) 评论(0) 编辑
摘要: 明天就要去上海大学参加 2015赛季 ACM/ICPC 最后一场比赛 —— EC-Final,在这之前,顺利地把期末大作业赶出来了。 在这种期末大作业10个人里面有9个是从网上下载的国内计算机水平五六流大学里学习编程,我感到压力很大。 (Update:前几天交了一份移动开发技术的期末大作业,老师说文阅读全文
posted @ 2015-12-11 17:42 Fighting_Heart 阅读(1159) 评论(7) 编辑
摘要: 队名:Unlimited Code Works(无尽编码) 队员:Wu、Wang、Zhou 先说一下队伍:Wu是大三学长;Wang高中noip省一;我最渣,去年来大学开始学的a+b,参加今年区域赛之前只学了大部分图论内容,以及一些数据结构、动态规划等内容,水平不及两个队友... ... 首先流水账式阅读全文
posted @ 2015-11-17 11:05 Fighting_Heart 阅读(733) 评论(1) 编辑
摘要: 这几天写题比较少,做了一下网页设计的期末大作业。搞了个连连看,核心代码和hdu 1175那个题目一样。 越来越觉得学ACM是十分有用的,软件的核心是数据结构和算法,学会了DFS,连连看就水到渠成了。 下载地址:http://pan.baidu.com/s/1pJspnWR 下面放出源码: html部阅读全文
posted @ 2015-06-08 14:27 Fighting_Heart 阅读(803) 评论(1) 编辑
摘要: 概率,$dp$。 设$dp[i][j]$表示有$i$个人在排队,$Tomato$排在第$j$个的情况下,到达目标状态的概率。$dp[n][m]$为答案。 当$j=1$时,$dp[i][1]=p1*dp[i][1]+p2*dp[i][i]+p4$; 当$2<=j<=k$时,$dp[i][j]=p1*d阅读全文
posted @ 2017-01-19 16:31 Fighting_Heart 阅读(2) 评论(0) 编辑
摘要: 期望,$dp$。 设$dp[i]$表示当前在位置$i$,到达目标位置所需的期望步数。 因为有直接跳跃的方案,所以要先预处理好每一个位置最后跳在哪个位置,设位置$i$最终跳到了位置$t[i]$。 那么,$dp[i]=sum(1/6*dp[t[i+j]])+1$。阅读全文
posted @ 2017-01-19 08:53 Fighting_Heart 阅读(2) 评论(0) 编辑
摘要: 期望,$dp$。 设$dp[i]$为目前和为$i$,到达目标状态需要的期望次数。$dp[i]=sum(dp[i+j]*p[j])+dp[0]/(k1*k2*k3)+1$。 无奈,接下来不知所措。去高斯消元了,妥妥的超时...... 最终看了大佬博客。发现有一个骚操作。 设$dp[i]=A[i]*dp阅读全文
posted @ 2017-01-18 22:39 Fighting_Heart 阅读(2) 评论(0) 编辑
摘要: 期望,$dp$。 设$dp[i][j]$表示还剩下$i$只老虎,$j$只鹿的情况下,到达目标状态的期望概率。$dp[0][X]$均为$1$。因为人碰到鹿可以选择杀或者不杀,两种情况都算一下,取个$max$即可。阅读全文
posted @ 2017-01-18 15:37 Fighting_Heart 阅读(2) 评论(0) 编辑
摘要: 期望,$dp$。 设$dp[i][j]$表示已经发现$i$种$bug$,$j$个程序中的$bug$到达目标状态需要的期望天数。则$dp[i][j]=dp[i][j]*i*j/(n*s)+dp[i][j+1]*i*(s-j)/(n*s)+dp[i+1][j]*(n-i)*j/(n*s)+dp[i+1]阅读全文
posted @ 2017-01-18 13:33 Fighting_Heart 阅读(2) 评论(0) 编辑
摘要: 概率$dp$,矩阵优化。 设$dp[i]$为到位置$i$存活的概率,那么如果位置$i$是雷区,$dp[i]=0$,否则$dp[i]=p*dp[i-1]+(1-p)*dp[i-2]$。求出最后一个雷区位置的后一个位置的$dp$值就是答案。长度较大,可以矩阵优化加速一下。输出%$lf$不让过,%$f$过阅读全文
posted @ 2017-01-18 11:02 Fighting_Heart 阅读(2) 评论(0) 编辑
摘要: 打表。把每一种情况的和都计算出来,这个可以按位统计贡献。询问的时候输出即可。阅读全文
posted @ 2017-01-17 18:53 Fighting_Heart 阅读(4) 评论(0) 编辑
摘要: $map$,$set$。 有可能有多个相同的数字,所以开一个$map$记录一下每个数字分别有几个,当$map[x]$减小到为$0$时,将$x$从$set$中删去。 对于每一次询问,直接$lower$_$bound$找到第一个大于等于询问数字的地方,如果是$s.end()$,那么就输出上一个位置,如果阅读全文
posted @ 2017-01-17 18:50 Fighting_Heart 阅读(5) 评论(0) 编辑
摘要: 脑洞题。 如果存在两个数字是一样的,那么有解,费用为那两个相同的数字的个数。 也可能是如果存在两个球个数差为3 6 9 12 .. 3的倍数 也可以转,并且是转换成第三种颜色,并且转换次数是较多的那个球的个数。阅读全文
posted @ 2017-01-17 18:45 Fighting_Heart 阅读(2) 评论(0) 编辑
摘要: 矩阵快速幂。 0 1-> 第二个数字会变成1 0 0-> 第二个数字会变成0 1 0-> 第二个数字会变成1 1 1-> 第二个数字会变成0 根据这四个特点,就可以写转移矩阵了。阅读全文
posted @ 2017-01-17 18:42 Fighting_Heart 阅读(2) 评论(0) 编辑
摘要: 状态压缩,$dp$,预处理。 设$dp[i][j]$为前$i-1$行填满,第$i$行为状态$j$的最小需要$1$种类的数量。预处理好每种状态能推出哪些状态,并且记录下所需花费就可以了。阅读全文
posted @ 2017-01-17 17:48 Fighting_Heart 阅读(4) 评论(0) 编辑
摘要: 期望,$dp$。 设$dp[i]$表示当前已经出现过$i$个数字的期望次数。在这种状态下,如果再投一次,会出现两种可能,即出现了$i+1$个数字以及还是$i$个数字。 因此 $dp[i]=dp[i]*i/n+dp[i+1]*(n-i)/n+1$,即$dp[i]=dp[i+1]+n/(n-i)$,$d阅读全文
posted @ 2017-01-16 21:15 Fighting_Heart 阅读(3) 评论(0) 编辑
摘要: $01$背包,概率。 要所有银行都不被抓住才算不抓住,有一个银行被抓住了就算是被抓住了。所以要计算反面。$dp[i]$表示抢到$i$元钱不被抓住的最大概率。阅读全文
posted @ 2017-01-16 17:06 Fighting_Heart 阅读(4) 评论(0) 编辑
摘要: 概率,暴力。 首先假设答案为$ans$,天数为$n$天,那么不出现至少二人生日相同的概率为$(n-0)/n*(n-1)/n*(n-2)/n*......*(n-(ans-1))/n$,要求这个概率小于等于$0.5$。 写了个二分发现答案不会超过$400$,所以前缀乘打个长度为$400$的表,二分一下阅读全文
posted @ 2017-01-16 15:53 Fighting_Heart 阅读(2) 评论(0) 编辑
摘要: 期望,$dp$。 设$ans[n]$为答案,那么$ans[n]=(ans[a]+ans[b]+ans[c]+.....+ans[n])/cnt+1$,其中$a$,$b$,$c$......$n$均为$n$的因子。 化简得到$ans[n]=(ans[a]+ans[b]+ans[c]+......+cn阅读全文
posted @ 2017-01-16 14:59 Fighting_Heart 阅读(1) 评论(0) 编辑