poj 2081 Recaman's Sequence】的更多相关文章

開始还以为暴力做不出来,须要找规律,找了半天找不出来.原来直接暴力.. 代码例如以下: #include<stdio.h> int a[1000050]; int b[100000000]={0}; int main() { int i,k; a[0]=0; for(i=1;i<=500000;i++) { a[i]=a[i-1]-i; if(a[i-1]-i>0&&!b[a[i-1]-i]) a[i]=a[i-1]-i; else a[i]=a[i-1]+i; b…
[简要题意]:这个主题是很短的叙述性说明.挺easy. 不重复. [分析]:只需要加一个判断这个数是否可以是一个数组,这个数组的范围. // 3388K 0Ms #include<iostream> using namespace std; #define Max 500001 int a[Max]; bool b[10000000] = {false}; // b的数据范围是能够试出来的- void init() { a[0] = 0; b[0] = true; for(int m = 1;…
Recaman's Sequence Time Limit: 3000ms Memory Limit: 60000KB This problem will be judged on PKU. Original ID: 208164-bit integer IO format: %lld      Java class name: Main   The Recaman's sequence is defined by a0 = 0 ; for m > 0, am = am−1 − m if the…
                                                                                                      Recaman's Sequence Time Limit: 3000MS   Memory Limit: 60000K Total Submissions: 22363   Accepted: 9605 Description The Recaman's sequence is defined…
Recaman's Sequence Time Limit: 3000MS   Memory Limit: 60000K Total Submissions: 22566   Accepted: 9697 Description The Recaman's sequence is defined by a0 = 0 ; for m > 0, am = am−1 − m if the rsulting am is positive and not already in the sequence,…
题目:id=2411" target="_blank">poj 2411 Mondriaan's Dream 题意:给出一个n*m的矩阵,让你用1*2的矩阵铺满,然后问你最多由多少种不同的方案. 分析:这是一个比較经典的题目.网上各种牛B写法一大堆.题解也是 我们能够定义状态:dp[i][st]:在第 i 行状态为 st 的时候的最慷慨案数. 然后转移方程:dp[i][st] = sum (dp[i-1][ss]) 即全部的当前行都是由上一行合法的状态转移而来. 而状态…
http://poj.org/problem?id=3128 大致题意:输入一串含26个大写字母的字符串,能够把它看做一个置换.推断这个置换是否是某个置换的平方. 思路:具体解释可參考url=ihxGpxX7x7ba4dROfWpQ0wlucC03fhDtKuEETsQjYUePKN41PnCBqm0lKrAeDfPXddo8i_1l3834K7iGivkTD-bsu1lAFYS6W55CKqvr13_" style="color:rgb(255,153,0); text-decora…
POJ 3422 Kaka's Matrix Travels 链接:http://poj.org/problem? id=3422 题意:有一个N*N的方格,每一个方格里面有一个数字.如今卡卡要从左上角走到右下角,规定每次仅仅能向下或者向右走.每次走到一个格子,将得到该格子的数字,而且该格子的数字变为0.当卡卡走一次时,非常easy求出最大值,问卡卡走k次,可以得到的最大值为多少. 思路:最小费用最大流 关键是怎样构图 1. 将N*N个格点拆分为两个点(i,i + N*N),每一个点之间连一条流…
POJ 3422 Kaka's Matrix Travels 题目链接 题意:一个矩阵.从左上角往右下角走k趟,每次走过数字就变成0,而且获得这个数字,要求走完之后,所获得数字之和最大 思路:有点类似区间k覆盖的建图方法,把点拆了,每一个点有值的仅仅能选一次,其它都是无值的.利用费用流,入点出点之间连一条容量1,有费用的边,和一条容量k - 1,费用0的边,然后其它就每一个点和右边和下边2个点连边.然后跑费用流 代码: #include <cstdio> #include <cstrin…
意甲冠军  中国 依据Havel-Hakimi定理构图即可咯  先把顶点按度数从大到小排序  可图的话  度数大的顶点与它后面的度数个顶点相连肯定是满足的  出现了-1就说明不可图了 #include<cstdio> #include<cstring> #include<algorithm> using namespace std; const int N = 20; int mat[N][N], ord[N]; bool cmp(int i, int j) { ret…