摘要: Ignatius and the Princess ITime Limit: 2000/1000 MS (Java/Others)Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 9934Accepted Submission(s): 2972Special JudgeProblem DescriptionThe Princess has been abducted by the BEelzebub feng5166, our hero Ignatius has to rescue our pretty Princess 阅读全文
posted @ 2013-08-12 16:12 SStep 阅读(158) 评论(0) 推荐(0) 编辑
摘要: SafecrackerTime Limit: 2000/1000 MS (Java/Others)Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 6494Accepted Submission(s): 3238Problem Description=== Op tech briefing, 2002/11/02 06:42 CST === "The item is locked in a Klein safe behind a painting in the second-floor library. Kle 阅读全文
posted @ 2013-08-10 18:01 SStep 阅读(214) 评论(0) 推荐(0) 编辑
摘要: 连连看Time Limit: 20000/10000 MS (Java/Others)Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 14226Accepted Submission(s): 3710Problem Description“连连看”相信很多人都玩过。没玩过也没关系,下面我给大家介绍一下游戏规则:在一个棋盘中,放了很多的棋子。如果某两个相同的棋子,可以通过一条线连起来(这条线不能经过其它棋子),而且线的转折次数不超过两次,那么这两个棋子就可以在棋盘上消去。不好意思,由于我以前没有玩过连连看,咨询了同学的意 阅读全文
posted @ 2013-08-10 15:42 SStep 阅读(321) 评论(0) 推荐(0) 编辑
摘要: Problem Description怀特先生是一名研究地震的科学家,最近他发现如果知道某一段时间内的地壳震动能量采样的最小波动值之和,可以有效地预测大地震的发生。假设已知一段时间的n次地壳震动能量的采样值为a1,a2,…an,那么第i 次采样的最小波动值为min{|ai-aj| | i 2 #include 3 #include 4 #include 5 #include 6 #define maxn 100001 7 using namespace std; 8 int N; 9 int A[maxn],B[maxn],C[maxn];10 struct Link11 {12 i... 阅读全文
posted @ 2013-08-10 15:12 SStep 阅读(228) 评论(0) 推荐(0) 编辑
摘要: Problem Description为了测试我们的足球机器人的性能,我们设计如下的测试方法:将一个机器人放在一个n*n的矩形阵列的某个格子中,它每次可以向与它所处的格子相邻的4个格子中的任何一个移动。在这个阵列的一些格子中,摆放着能量,机器人希望能够得到这些能量。但是,这个阵列中存在着两种障碍物,一种障碍物使得机器人无法向前移动进入这个 格子;第二种障碍物机器人虽然可以通过,但是,通过这样一个障碍物的时候,它先前所吃到的所有的能量都将消失。你的任务是,对于给定的一个阵列以及它的描 述,计算出这个机器人所能够获得的最大能量值。 Input本题有多组输入数据,你必须处理到EOF为止输入数据的第. 阅读全文
posted @ 2013-08-10 15:06 SStep 阅读(265) 评论(0) 推荐(0) 编辑
摘要: 1 #include 2 #include 3 #include 4 #include 5 #define INF 1y?y:x 7 using namespace std; 8 int dist[1003],vis[1003]; 9 int map[1003][1003],city[105];10 int N,M,P,Q;11 int Dijkstra()12 {13 int i,j,mark,mindis,min_d;14 memset(vis,0,sizeof(vis));15 for(i=1; i>T;39 while(T--)40 {41 ... 阅读全文
posted @ 2013-08-02 14:59 SStep 阅读(171) 评论(0) 推荐(0) 编辑
摘要: 找出各个顶点所属的连通分量,将连通分量的点看作一个点,求这些顶点入度为0的个数和出度0的个数,取最大的即可。 1 #include 2 #include 3 #include 4 #include 5 #define maxn 102 6 using namespace std; 7 vector G[maxn],G2[maxn]; 8 vector s;//栈 9 int vis[maxn],10 sccno[maxn], //标记顶点所属的连通分量11 scc_cnt; ... 阅读全文
posted @ 2013-07-30 11:45 SStep 阅读(228) 评论(0) 推荐(0) 编辑
摘要: 因为每一幢楼都有线连,选择最小与外界供电设施所需要的费用最小的楼做外连。这个楼也是做为其他楼的根节点。 #include#includeusing namespace std;#define M 125000int u[M],v[M],w[M],r[M],p[502];int cmp(const int i,const int j)//间接排序{ return w[i] < w[j]; }int find(int x){ return p[x] == x ? x : p[x]=find(p[x]); }int main(){ int i,m,k,x,y,ans,t,n,e; //f... 阅读全文
posted @ 2013-07-29 09:06 SStep 阅读(191) 评论(0) 推荐(0) 编辑
摘要: 旋转操作不影响中序遍历。只要把树存起来再中序遍历即可。 1 2 #include 3 using namespace std; 4 struct node{ 5 int L; 6 int R; 7 }Tree[11]; 8 void InorderTraverse(int root) 9 {10 if(Tree[root].L != -1)InorderTraverse(Tree[root].L);11 cout>T;19 while(T--)20 {21 cin>>N;22 for(i=0; i>root>>... 阅读全文
posted @ 2013-07-26 20:50 SStep 阅读(170) 评论(0) 推荐(0) 编辑
摘要: 建图(蛇形填数)+求素数+bfs。注意:数据可以是素数。当起点与终点不同时,终点为素数时,结果就是impossible,起点与终点相同时,结果都是0. 1 #include 2 #include 3 int vis[101][101],bfs[10010]; 4 int dx[4]={0,0,1,-1},dy[4]={1,-1,0,0}; 5 int A[101][101]; 6 int prim[10002]={0}; 7 void prime() 8 { 9 int i,j;10 memset(prim,0,sizeof(prim));11 prim[1] = 1;... 阅读全文
posted @ 2013-07-26 16:31 SStep 阅读(192) 评论(0) 推荐(0) 编辑
摘要: 士兵杀敌(五)时间限制:2000 ms | 内存限制:65535 KB输入只有一组测试数据第一行是三个整数N,C,Q(1 2 #define Max 1000005 3 int a[Max]; 4 int main() 5 { 6 //freopen("in.txt","r",stdin); 7 int i,N,C,Q,L,R,D; 8 9 scanf("%d%d%d",&N,&C,&Q);10 for(i=0; i<C; i++)11 {12 scanf("%d%d%d",& 阅读全文
posted @ 2013-07-19 10:31 SStep 阅读(195) 评论(0) 推荐(0) 编辑
摘要: 和树状数组插点求线刚好相反,插线求点看上去似乎是插点求线的逆操作,插点求线操作是:插点时更新后方+lowbit位置,求线时统计前方-lowbit 的和,插线求点反而是插线时修改前方lowbit位置值,求点时统计后方lowbit的和,插点求线代码见士兵杀敌(二),以下是插线求点的方法: 1 #include 2 #include 3 const int M=1000010; 4 int data[M]; 5 int Max; 6 inline int LowBit(int n) 7 { 8 return n&(-n); 9 }10 void Plus(int n,int value) / 阅读全文
posted @ 2013-07-18 20:54 SStep 阅读(236) 评论(0) 推荐(0) 编辑
摘要: 题目连接:http://acm.nyist.net/JudgeOnline/problem.php?pid=634分别从两个数组中各任取一个数相加,可以得到n^2个和,求这些和中最大的前m个数;我们把这n^2个和组织成如下n个有序表:表1:A1+B1 >= A1+B2 >= A1+B3 >= ...... 阅读全文
posted @ 2013-07-18 16:21 SStep 阅读(300) 评论(0) 推荐(0) 编辑
摘要: RMQ问题,即范围最小值问题(Range Minimum Query)ST表【任务】给定一个数组A[n],设计一个数据结构,支持查询操作Query(L,R):计算min{AL,AL+1,...AR}或者max{AL,AL+1,...AR} 1 #include 2 #include 3 using namespace std; 4 #define MAX 180012 5 int A[MAX][17],B[MAX][17]; 6 7 int RMQ(int L,int R) 8 { 9 int k = 0;10 while((1<<(k+1)) <= R-L+1) k++;1 阅读全文
posted @ 2013-07-18 15:25 SStep 阅读(219) 评论(0) 推荐(0) 编辑
摘要: 二叉索引数(树状数组)【任务】对于数组A[1..n],在O(logn)的时间内完成以下任务:(1) Add(x,d):让A[x]增加 d;(2) Query(L,R):计算A[L]+...+A[R]的和;(这题可作为树状数组的模板) 1 #include 2 #define Max 1000005 3 int C[Max]; 4 int N,M; 5 int lowbit(int x) 6 { 7 return x & -x; 8 } 9 int sum(int i)//计算前i项和10 {11 int ret = 0;12 while(i>0)13 {14 ... 阅读全文
posted @ 2013-07-18 11:38 SStep 阅读(233) 评论(0) 推荐(0) 编辑
摘要: 题意:给一个环编号1~n,由n个硬币组成,每次只可取连续的1~k个硬币,A,B两人轮流取,问最后谁赢。我们可以利用对称性解题,第一个玩家怎么取,第二个玩家在对称点取一样的,这样先手必败 1 #include 2 #include 3 #include 4 using namespace std; 5 int main() 6 { 7 int t,n,k; 8 int count=1; 9 scanf("%d",&t);10 while(t--)11 {12 scanf("%d%d",&n,&k);13 printf("C 阅读全文
posted @ 2013-05-29 19:45 SStep 阅读(117) 评论(0) 推荐(0) 编辑
摘要: 此定理说明用n-1条边将n个一致的顶点连接起来的连通图的个数为n^(n-2),也可以这样理解,将n个城市连接起来的树状公路网络有n^(n-2)种方案。所谓树状,指的是用n-1条边将n个顶点构成一个连通图。当然,建造一个树状的公路网络将n个城市连接起来,应求其中长度最短、造价最省的一种,或效益最大的一种。Cayley定理只是说明可能方案的数目. 1 #include 2 using namespace std; 3 #define N 10003 4 int main() 5 { 6 int t,i,n; 7 for(cin>>t;t--;) 8 { 9 cin>>n;1 阅读全文
posted @ 2013-05-16 20:38 SStep 阅读(306) 评论(0) 推荐(0) 编辑
摘要: 最长公共子序列时间限制:3000 ms | 内存限制:65535 KB难度:3描述 咱们就不拐弯抹角了,如题,需要你做的就是写一个程序,得出最长公共子序列。 tip:最长公共子序列也称作最长公共子串(不要求连续),英文缩写为LCS(Longest Common Subsequence)。其定义是,一个序列 S ,如果分别是两个或多个已知序列的子序列,且是所有符合此条件序列中最长的,则 S 称为已知序列的最长公共子序列。输入 第一行给出一个整数N(0 2 #include 3 char x[1001],y[1001]; 4 char a[1001],b[1001]; 5 i... 阅读全文
posted @ 2013-03-26 22:08 SStep 阅读(137) 评论(0) 推荐(0) 编辑