HAOI2008题解】的更多相关文章

又来写题解辣-然而并不太清楚题目排列情况...不管辣先写起来- T1:[bzoj1041] 题目链接:http://www.lydsy.com/JudgeOnline/problem.php?id=1041 一个赤果果的数学题--- 首先坐标轴上一定有四个, 最大公约数搞一下然后判断一下就可以啦,细节全部都在代码- 代码如下: var i,j,ans,d:longint; t,r,m:int64; function flag(x,y:longint):longint; var t:longint…
时空限制:1000ms / 128MB 原题链接: 洛谷 bzoj Description 有n个圆盘从天而降,后面落下的可以盖住前面的.求最后形成的封闭区域的周长.看下面这副图, 所有的红 色线条的总长度即为所求. Input 第一行为1个整数n,n<=1000 接下来n行每行3个实数,ri,xi,yi,表示下落时第i个圆盘的半径和圆心坐标. Output 最后的周长,保留三位小数 Sample Input 2 1 0 0 1 1 0 Sample Output 10.472 题解 两页的爆蛋…
P4290 [HAOI2008]玩具取名 题目描述 某人有一套玩具,并想法给玩具命名.首先他选择WING四个字母中的任意一个字母作为玩具的基本名字.然后他会根据自己的喜好,将名字中任意一个字母用"WING"中任意两个字母代替,使得自己的名字能够扩充得很长. 现在,他想请你猜猜某一个很长的名字,最初可能是由哪几个字母变形过来的. 输入格式 第一行四个整数W.I.N.G.表示每一个字母能由几种两个字母所替代. 接下来W行,每行两个字母,表示W可以用这两个字母替代. 接下来I行,每行两个字母…
题目地址:https://www.luogu.com.cn/problem/P4289 题解原地址:https://createsj.blog.luogu.org/solution-p4289 让我们先来看看题目: 题目描述 在一个 $4*4$ 的方框内摆放了若干个相同的玩具,某人想将这些玩具重新摆放成为他心中理想的状态,规定移动时只能将玩具向上下左右四个方向移动,并且移动的位置不能有玩具,请你用最少的移动次数将初始的玩具状态移动到某人心中的目标状态. 输入输出格式 输入格式: 前 $4$ 行表…
这道题第一眼直接一个二分板子把第一问解决掉,然后主要是统计方案. 其实这个方程还不算难推,只要推出来朴素 \(dp\) ,之后的一步一步也很顺理成章,所以这种题主要看能不能静下心来慢慢做. solution 第一问就是一个 Monthly Expense S ,本片题解只说第二问. 朴素 \(dp\) 也没几个变量,所以很轻松的可以设计状态 \(f[i][j]\) 表示当前到第 \(i\) 段,一共分了 \(j\) 次的方案数. 我们思考如何来表示把几段放在一大段里面,也就可以推出来转移方程.…
bzoj1055,懒得复制,戳我戳我 Solution: 区间动规(以后开始动规会在solution前面标注是啥动规 我觉的这道题挺难想了,但其实状态定义了一下子就出来了(还是不行啊) 我们定义状态\(dp[i][j][sta]\),表示在\(i\)到\(j\)区间可不可以合成字符\(sta\),这里我们用\(1\)表示\(W\),\(2\)表示\(I\)依次类推 转移方程就很简单了:(注意有一个是\(1\)就是\(1\),然后可以\(break\)了) \[dp[i][j][sta]=max(…
http://www.lydsy.com/JudgeOnline/problem.php?id=1043 Description 有n个圆盘从天而降,后面落下的可以盖住前面的.求最后形成的封闭区域的周长.看下面这副图, 所有的红 色线条的总长度即为所求. Input 第一行为1个整数n,N<=1000 接下来n行每行3个实数,ri,xi,yi,表示下落时第i个圆盘的半径和圆心坐标. Output 最后的周长,保留三位小数 Sample Input 2 1 0 0 1 1 0 Sample Out…
1A什么的实在是太开心啦~~洛谷P1450 这道题目主要是考察对于容斥原理的掌握. 首先,注意到如果不存在有关硬币数量的限制而单纯询问方案的总数,就是一个简单的完全背包.这个思路提醒我们:如果能够求出所有不合法的方案,是不是就可以相减得到我们想要的答案了呢?那么我们注意到:令A[i]为第i种硬币超出范围的方案总数,显然有A[i]=dp[s-(d[i]+1)*c[i]]:强行超出,注意d[i]+1因为可以达到d[i]:剩下的就套容斥原理的公式即可: 代码: #include <bits/stdc+…
对于这道题目的两问,第一问直接二分答案求出最短长度.关键在于第二问应当如何求:建立dp方程,dp[i][j]代表到第i个分界线,切了j次(强制在第i处切一刀.这样就不会对后面的状态产生影响).状态转移的方程即是当前分界线枚举上一条分界线在哪里,上一条分界线与当前线之间如果相差不超过之前二分出来的答案,就可以判定合法,方案数累加.因为注意到合法的分界线必然是一段连续区间,且单调右移不减,所以使用一个队列来维护队列内的元素总值.虽然让我感到非常玄学的是明明数据很小,我的数组一开小了就WA?不是很理解…
每日一题 day47 打卡 Analysis 首先,最终每个小朋友的糖果数量可以计算出来,等于糖果总数除以n,用ave表示. 假设标号为i的小朋友开始有Ai颗糖果,Xi表示第i个小朋友给了第i-1个小朋友Xi颗糖果,如果Xi<0,说明第i-1个小朋友给了第i个小朋友Xi颗糖果,X1表示第一个小朋友给第n个小朋友的糖果数量. 所以最后的答案就是ans=|X1| + |X2| + |X3| + ……+ |Xn|. 对于第一个小朋友,他给了第n个小朋友X1颗糖果,还剩A1-X1颗糖果:但因为第2个小朋…