OpenJudge 核电站】的更多相关文章

描述 一个核电站有N个放核物质的坑,坑排列在一条直线上.如果连续M个坑中放入核物质,则会发生爆炸,于是,在某些坑中可能不放核物质. 任务:对于给定的N和M,求不发生爆炸的放置核物质的方案总数 输入 只一行,两个正整数N,M( 1 < N < 50,2 ≤ M ≤ 5 ) 输出 一个正整数S,表示方案总数. 设dp(n,c)代表前n个坑右边紧挨着c个放了核物质的坑,此时前n个坑的放置方案总数,答案是dp(N,0) #include<iostream> #include<cstr…
题目链接:http://noi.openjudge.cn/ch0206/9267/ 描述 一个核电站有N个放核物质的坑,坑排列在一条直线上.如果连续M个坑中放入核物质,则会发生爆炸,于是,在某些坑中可能不放核物质. 任务:对于给定的N和M,求不发生爆炸的放置核物质的方案总数 f[i][j]表示前i个已经连续了j个.那么当前有两种状态:1.当前这个格子放的话,那么加上这个格子为j个,所以由j-1推来.2.不放的话,前面的状态是什么都可以了,所以从f[i-1][0..m-1]推来. #include…
http://noi.openjudge.cn/ch0204/8463/ 挺恶心的一道简单分治. 一开始准备非递归. 大if判断,后来发现代码量过长,决定大打表判断后继情况,后来发现序号不对称. 最后发现非递归分治非常不可做. 采用递归和坐标变换,降低了编程复杂度和思维复杂度. 坐标变换的思想十分的清晰啊!它是个好东西啊,以后要善用. #include<cmath> #include<cstdio> #include<cstring> #include<algor…
http://noi.openjudge.cn/ch0405/191/ http://poj.org/problem?id=1189 一开始忘了\(2^{50}\)没超long long差点写高精度QvQ 很基础的dp,我先假设有\(2^n\)个球,分开时就分一半,这样每次都能除开. #include<cstdio> #include<cstring> #include<algorithm> using namespace std; typedef long long…
http://noi.openjudge.cn/ch0405/1665/?lang=zh_CN 状压水题,手动转移 #include<cstdio> #include<cstring> #include<algorithm> using namespace std; int in() { int k = 0, fh = 1; char c = getchar(); for(; c < '0' || c > '9'; c = getchar()) if (c…
http://noi.openjudge.cn/ch0405/1793/ 好虐的一道题啊. 看数据范围,一眼状压,然后调了好长时间QwQ 很容易想到覆盖的点数作为状态,我用状态i表示至少覆盖状态i表示的点的最小矩形覆盖面积. 又因为矩形一定在两个给出的点上,转移时枚举两个点,用去掉这两个点的状态来更新? 这是错误的做法,反例:4 (0,0) (0,1) (1,0) (1,1) 所以我们需要去掉这两个点的同时,去掉这两个点构成的矩形包含的所有在状态中的点. 但这样还是会WA,因为还需要初始化至少包…
2990:符号三角形 总时间限制:  1000ms       内存限制:  65536kB 描述 符号三角形的第1行有n个由“+”和”-“组成的符号 ,以后每行符号比上行少1个,2个同号下面是”+“,2个异号下面是”-“ .计算有多少个不同的符号三角形,使其所含”+“ 和”-“ 的个数相同. n=7时的1个符号三角形如下:+ + - + - + + + - - - - + - + + + - - + + - - + - - - + 输入 每行1个正整数n<=24,n=0退出. 输出 n和符号三…
在openjudge似乎无法凭题号搜到题...? 总时间限制:  1000ms  内存限制:  65536kB 描述 政府在某山区修建了一条道路,恰好穿越总共m个村庄的每个村庄一次,没有回路或交叉,任意两个村庄只能通过这条路来往.已知任意两个相邻的村庄之间的距离为di(为正整数),其中,0 < i < m.为了提高山区的文化素质,政府又决定从m个村中选择n个村建小学(设 0 < n < = m < 500 ).请根据给定的m.n以及所有相邻村庄的距离,选择在哪些村庄建小学,才…
[OpenJudge 3066]随机序列 试题描述 Bob喜欢按照如下规则生成随机数: 第一步:令a[0] = S, 当n = 0: 第二步:a[n+1] = (a[n]*A+B)%P: 第三步:如果a[n+1]在之前出现不超过两次,n = n + 1 并且转到第二步. 比如,如果S=4, A=2, B=1并且P=6,那么我们构建的序列是4,3,1,3,1 Bob认为两个随机产生的序列之前应该会有某种关联.所以他想知道这两个随机生成的序列的最长公共子序列.一个序列的子序列是指可以从该序列中删除某…
[OpenJudge 3064]坠落的蚂蚁 试题描述 一根长度为1米的木棒上有若干只蚂蚁在爬动.它们的速度为每秒一厘米或静止不动,方向只有两种,向左或者向右.如果两只蚂蚁碰头,则它们立即交换速度并继续爬动.三只蚂蚁碰头,则两边的蚂蚁交换速度,中间的蚂蚁仍然静止.如果它们爬到了木棒的边缘(0或100厘米处)则会从木棒上坠落下去.在某一时刻蚂蚁的位置各不相同且均在整数厘米处(即1,2,3,…99厘米),有且只有一只蚂蚁A速度为0,其他蚂蚁均在向左或向右爬动.给出该时刻木棒上的所有蚂蚁位置和初始速度,…