56 条题解
- 
  0naneux LV 8 @ 2009-10-23 21:07:22 编译通过... 
 ├ 测试数据 01:答案正确... 0ms
 ├ 测试数据 02:答案正确... 0ms
 ├ 测试数据 03:答案正确... 0ms
 ├ 测试数据 04:答案正确... 0ms
 ├ 测试数据 05:答案正确... 0ms
 ├ 测试数据 06:答案正确... 0ms
 ├ 测试数据 07:答案正确... 0ms
 ├ 测试数据 08:答案正确... 0ms
 ├ 测试数据 09:答案正确... 0ms
 ├ 测试数据 10:答案正确... 0ms
 ---|---|---|---|---|---|---|---|-
 Accepted 有效得分:100 有效耗时:0ms
- 
  0@ 2009-10-14 16:07:45这题编程不难,就是想到用二分图染色来做就不简单了。 看了高人证明那个不在同一个栈的充分必要条件的题解,恍然大悟! 
- 
  0@ 2009-10-13 00:00:26procedure dfs(ii:longint); 
 var i,j,k,l:longint;
 begin
 k:=-1;
 for i:=1 to g[ii,0] do
 if (b[g[ii,i]]>=0)and (k>=0)and (kb[g[ii,i]]) then begin writeln('0');halt;end
 else if b[g[ii,i]]>=0 then k:=b[g[ii,i]];
 b[ii]:=(k+1) mod 2;
 for i:=1 to g[ii,0] do if b[g[ii,i]]
- 
  0@ 2009-10-12 19:03:49哇~不错的题。 
 很巧妙啊。
 编程复杂度不高,但绝对很难想到思路啊
 BSvj的bug。
 同一个程序交了三遍才过
- 
  0@ 2009-10-10 20:03:04猥琐的图论建模。。 
- 
  0@ 2009-10-07 09:10:12我第一次看到这题时想到了贪心........... 
 后来老师教我们说是二分图
 这题是去年提高组唯一一道不水的题啊
- 
  0@ 2009-10-06 21:30:46此题甚妙,首先是题目的模型非常隐蔽,估计考场上不会有人看出的(比赛时很nervous)。主要是考了图的二着色问题。如果看出了这点,下面就是编程复杂度的问题了。太难了!!!! 
- 
  0@ 2009-10-05 17:19:35orz 
 比赛的时候打死我都想不出这种方法
- 
  0@ 2009-10-05 11:17:44秒杀之。。。 
 编译通过...
 ├ 测试数据 01:答案正确... 0ms
 ├ 测试数据 02:答案正确... 0ms
 ├ 测试数据 03:答案正确... 0ms
 ├ 测试数据 04:答案正确... 0ms
 ├ 测试数据 05:答案正确... 0ms
 ├ 测试数据 06:答案正确... 0ms
 ├ 测试数据 07:答案正确... 0ms
 ├ 测试数据 08:答案正确... 0ms
 ├ 测试数据 09:答案正确... 0ms
 ├ 测试数据 10:答案正确... 0ms
 ---|---|---|---|---|---|---|---|-
 Accepted 有效得分:100 有效耗时:0ms
- 
  0@ 2009-09-25 22:17:04很综合的题··· 
 二分图+并查集+宽搜
 可能是我太弱了~
 判断入哪个栈用的是二分图
 判断是否是是二分图我用了并查集。。这样操作还是很方便的
 染色第一次DFS结果还是30分。。吐血啊。。即使我做出来还是没一等。。。
 然后改成了一个简单的BFS。。。
- 
  0@ 2009-09-24 13:22:05对于元素a[i],a[j],a[k]若存在 
 a[j]>a[i]>a[k] 且 i
- 
  0@ 2009-09-20 16:56:40什么和什么嘛。。。。。 考虑对于任意两个数q1[i]和q1[j]来说,它们不能压入同一个栈中的充要条件是什么(注意没有必要使它们同时存在于同一个栈中,只是压入了同一个栈).实际上,这个条件p是:存在一个k,使得i 
- 
  0@ 2009-09-18 22:18:32额....3次才AC..这题算法简单,处理起来麻烦啊... 
- 
  0@ 2009-09-11 15:06:57program twostack; 
 var
 i,j,now,n:integer;
 f:boolean;
 table:array [1..1000,1..1000] of boolean;
 c,a,num:array [1..1000] of integer;
 ans:ansistring;
 flag:array [1..1000] of boolean;
 t:array [1..2] of integer;
 s:array [1..2,0..1000] of integer;
 procedure push(stack,no:integer);
 begin
 ans:=ans+chr((47+stack)*2+1);
 inc(t[stack]);
 s[stack,t[stack]]:=no;
 end;
 procedure eject(stack:integer);
 begin
 ans:=ans+chr((48+stack)*2);
 dec(t[stack]);
 inc(now);
 end;
 procedure error;
 begin
 writeln (0);
 close (output);
 halt;
 end;
 procedure color(node,cn:integer);
 var i:integer;
 begin
 c[node]:=cn;flag[node]:=true;
 for i:=1 to n do if (table[node,i]) and (flag[i]=false) then begin
 if c[i]0 then error else if cn=1 then color(i,2) else color(i,1);
 end;
 flag[node]:=false;
 end;
 begin
 fillchar (table,sizeof(table),0);
 fillchar (c,sizeof(c),0);
 fillchar (flag,sizeof(flag),0);
 assign (input,'twostack.in');
 reset (input);
 readln (n);
 for i:=1 to n do a[i]:=maxint;
 for i:=1 to n do read (num[i]);
 for i:=1 to n do for j:=i+1 to n do if num[j]
- 
  0@ 2009-09-09 20:51:43#include 
 int a[1001];
 char b[2001];
 int c1[1001];
 int c2[1001];
 int main()
 {
 int n;
 scanf("%d",&n);
 int i,j,k,p=2;
 for(i=1;i
- 
  0@ 2009-09-06 21:08:27Orz 潘神牛!!!!!!!! 潘神牛!!!!!!!!!! 潘神牛!!!!!!!!!! 潘神牛!!!!!!!!!! 潘神牛!!!!!!!!!! 潘神牛!!!!!!!!!! 潘轶功神牛!!!!!!!! 
- 
  0@ 2009-09-02 18:44:27好难呀>_ 
- 
  0@ 2009-08-22 14:30:11无语…… 编译通过... 
 ├ 测试数据 01:答案正确... 0ms
 ├ 测试数据 02:答案正确... 0ms
 ├ 测试数据 03:答案正确... 0ms
 ├ 测试数据 04:答案正确... 0ms
 ├ 测试数据 05:答案正确... 0ms
 ├ 测试数据 06:答案正确... 0ms
 ├ 测试数据 07:答案正确... 0ms
 ├ 测试数据 08:答案正确... 0ms
 ├ 测试数据 09:答案正确... 0ms
 ├ 测试数据 10:答案正确... 0ms
 ---|---|---|---|---|---|---|---|-
 Accepted 有效得分:100 有效耗时:0ms
- 
  0@ 2009-08-18 17:13:16我弱了 
- 
  0@ 2009-08-17 01:30:20我输出的时候忘记空格了也AC~ 
 太神奇了~
 刚交的时候突然想起来还愣了一下~
 写的bfs~据说就连dfs都可以过~