随笔分类 -  ACM

常见算法
摘要:幂时间限制:3000 ms | 内存限制:65535 KB难度:4描述在学习循环的时候,我们都练习过利用循环计算a的k次方。现在给定整数k和一个整数m,请你求出对应的整数a,使得a的k次方是不超过m并且最接近m的数值。 输入一个整数T表示测试组数。 对于每组测试数据: 给定两个整数k和m 数据范围:... 阅读全文
posted @ 2013-05-16 19:43 YaLing 阅读(268) 评论(0) 推荐(0)
摘要:1 #include 2 #include 3 using namespace std; 4 #define N 1000000010 5 int sum,n,p[50001][21],len[50001],L[21],R[21]; 6 7 void merger(int a[],int b... 阅读全文
posted @ 2013-05-07 19:22 YaLing 阅读(192) 评论(0) 推荐(0)
摘要:#include #include #includeusing namespace std;int main(){ int n,a[2001],b[2001],i,j,ii,jj,asn; bool visit[2001]; while(cin>>n) { me... 阅读全文
posted @ 2013-05-02 17:37 YaLing 阅读(195) 评论(0) 推荐(0)
摘要:状态转移方程:d[i, j]=max(d[i, j-1],d[i+2^(j-1), j-1])#include #include#includeusing namespace std;#define M 100001#define max(a,b) a > b ? a : b#define min(... 阅读全文
posted @ 2013-05-02 10:53 YaLing 阅读(139) 评论(0) 推荐(0)
摘要://01背包优化:#include #include#includeusing namespace std;struct per{ int money,exp;}p[1001];int dp[1000001];int main(){ int N,T,M,i,j,sum; scanf... 阅读全文
posted @ 2013-05-01 00:34 YaLing 阅读(123) 评论(0) 推荐(0)
摘要:#include#include#includeusing namespace std;int mat[101][101], temp[101], m, r,c;void f(int *a){ int i,sum = 0; for(i = 0; i 0) sum... 阅读全文
posted @ 2013-04-28 20:36 YaLing 阅读(137) 评论(0) 推荐(0)
摘要:圈水池时间限制:3000 ms | 内存限制:65535 KB难度:4描述有一个牧场,牧场上有很多个供水装置,现在牧场的主人想要用篱笆把这些供水装置圈起来,以防止不是自己的牲畜来喝水,各个水池都标有各自的坐标,现在要你写一个程序利用最短的篱笆将这些供水装置圈起来!(篱笆足够多,并且长度可变)输入第一... 阅读全文
posted @ 2013-04-27 21:44 YaLing 阅读(241) 评论(0) 推荐(0)
摘要:过河问题时间限制:1000 ms | 内存限制:65535 KB难度:5描述在漆黑的夜里,N位旅行者来到了一座狭窄而且没有护栏的桥边。如果不借助手电筒的话,大家是无论如何也不敢过桥去的。不幸的是,N个人一共只带了一只手电筒,而桥窄得只够让两个人同时过。如果各自单独过桥的话,N人所需要的时间已知;而如... 阅读全文
posted @ 2013-04-27 15:21 YaLing 阅读(227) 评论(0) 推荐(0)
摘要:喷水装置(二)时间限制:3000 ms | 内存限制:65535 KB难度:4描述有一块草坪,横向长w,纵向长为h,在它的橫向中心线上不同位置处装有n(nb),且就像上边所说的[x,y]应该是最大的,才能保证最后所需子区间的个数最小...12#include3#include4#include5#i... 阅读全文
posted @ 2013-04-27 14:11 YaLing 阅读(247) 评论(0) 推荐(0)
摘要:1#include2#include3#include4usingnamespacestd;5inta[]={1,2,6,24,120,720,5040,40320,362880};6intmain()7{8intn,t,i,s;9cin>>t;10while(t--)11{12cin>>n;13s... 阅读全文
posted @ 2013-04-26 20:47 YaLing 阅读(140) 评论(0) 推荐(0)
摘要:1#include2#include3#include4usingnamespacestd;5longlonga[64][64];6intmain()7{8intm,n,i,j;9a[0][0]=a[1][0]=a[1][1]=1;10for(i=2;i<64;i++)11{12a[i][0]=1;... 阅读全文
posted @ 2013-04-26 18:56 YaLing 阅读(351) 评论(0) 推荐(0)
摘要:由题目意思来看,既然是对称的路径,那么我们只需要把左上三角的值与右下三角的值加到左上三角上,然后计算从0,0到对称线上的点计算最短路,这样可以大大减少计算时间。那么存网格的时候可以用二维数组存放起来,以测试用例存放就是:221211211然后我们看第一条,(1,1)—>(1,2)—>(2,2)第二条... 阅读全文
posted @ 2013-04-26 15:29 YaLing 阅读(309) 评论(0) 推荐(0)
摘要:http://acm.nyist.net/JudgeOnline/problem.php?pid=523#include#include#include#includeusingnamespacestd;structpoint{inta,b,c,time;}p1,p2,p3;intA,B,C,t,m... 阅读全文
posted @ 2013-04-25 21:33 YaLing 阅读(181) 评论(0) 推荐(0)
摘要:1#include2#include3#include4#include5usingnamespacestd;6inta[22],n;7intb[]={0,0,0,4,6,0,0,12,40,0,0,171,410,0,0,1896,5160,0,0,32757};89voidslove()10{1... 阅读全文
posted @ 2013-04-25 20:20 YaLing 阅读(211) 评论(0) 推荐(0)
摘要:题目92图像有用区域时间限制:3000 ms | 内存限制:65535 KB难度:4描述“ACKing”同学以前做一个图像处理的项目时,遇到了一个问题,他需要摘取出图片中某个黑色线圏成的区域以内的图片,现在请你来帮助他完成第一步,把黑色线圏外的区域全部变为黑色。 图1 图2已知黑线各处不会出现交叉... 阅读全文
posted @ 2013-04-25 18:52 YaLing 阅读(177) 评论(0) 推荐(0)
摘要:1#include2#include3usingnamespacestd;45intmap[105][105];6boolvisit[105][105];78voiddfs(inti,intj)9{10visit[i][j]=true;11if(map[i-1][j]==1&&!visit[i-1]... 阅读全文
posted @ 2013-04-24 20:29 YaLing 阅读(197) 评论(0) 推荐(0)
摘要:求图的最小生成树。有两种方法。prim法和kruskal法。prim法只与节点有关,与边无关,所以适合于求边稠密的网的最小生成树。而kruskal算法与边有关,故其适合于求边比较稀疏的网络。prim算法:1)初始化set集为随意的一个节点,这里初始化为1。2)找出与set集中的点相连的,花费最小的并... 阅读全文
posted @ 2013-04-24 19:23 YaLing 阅读(266) 评论(0) 推荐(0)
摘要:整数划分问题是算法中的一个经典命题之一,有关这个问题的讲述在讲解到递归时基本都将涉及。所谓整数划分,是指把一个正整数n写成如下形式: n=m1+m2+...+mi; (其中mi为正整数,并且1 0),只有一种划分即{1}; (2) 当m=1时,不论n的值为多少,只有一种划分即n个1,{1,1,1,... 阅读全文
posted @ 2013-04-23 19:19 YaLing 阅读(170) 评论(0) 推荐(0)
摘要:1#include2#include3usingnamespacestd;4intn,visit[21],cir[21],pri[40];5voiddfs(intk,intn)6{7inti;8if(k==n&&pri[1+cir[n-1]])9{10cout>n,n)36{37cout<<"Cas... 阅读全文
posted @ 2013-04-23 14:25 YaLing 阅读(151) 评论(0) 推荐(0)
摘要:擅长排列的小明 II时间限制:1000 ms | 内存限制:65535 KB难度:3描述小明十分聪明,而且十分擅长排列计算。有一天小明心血来潮想考考你,他给了你一个正整数n,序列1,2,3,4,5......n满足以下情况的排列:1、第一个数必须是12、相邻两个数之差不大于2你的任务是给出排列的种数... 阅读全文
posted @ 2013-04-22 16:24 YaLing 阅读(150) 评论(0) 推荐(0)