Page 1 of 2

312 - Crosswords (II)

Posted: Tue Nov 25, 2003 4:59 pm
by bjacoke001
Does anyone have a tricky input that would show me why I'm getting WA? I can't find any errors in my program, but apparently it's wrong. Thanks.

Posted: Sun Feb 01, 2004 6:40 pm
by sjn
Pay attention to the description of the problem
Don't use any unnecessary spaces at the end of the line.
hope this can help u :wink:

over 10 WA

Posted: Fri Aug 06, 2004 1:04 am
by stcheung
First time got so frustrated with a problem. Got WA at lesat 10 times. Could anyone help...at least provide me 1 input that fails my program? Thanks in advance.

[cpp]/* 312 */

#include <iostream.h>
#include <stdlib.h>
#include <string>

string chars(char ch, int numtimes);
string numstring(int n);
string trim(string s);

int main()
{
int row, col;
while(true)
{
cin >> row >> col;
if(row == 0 && col == 0)
break;
int squares[row][col];
int crossword[row][col];
for(int i=0; i<row; i++)
{
for(int j=0; j<col; j++)
{
cin >> squares[j];
crossword[j] = 0;
}
}

int next=1;
for(int i=0; i<row; i++)
{
for(int j=0; j<col; j++)
{
if(squares[j] == 0 && (j+1 < col) && squares[j+1] == 0 &&
(j == 0 || (squares[j-1] == 1)))
{
crossword[j] = next;
next++;
}
else if(squares[j] == 0 && (i+1 < row) && squares[i+1][j] == 0 &&
(i == 0 || (squares[i-1][j] == 1)))
{
crossword[j] = next;
next++;
}
} // end of inner for
} // end of outer for


for(int i=0; i<row; i++)
{
for(int j=0; j<col; j++)
{
if(squares[j] == 1 &&
(i == 0 || j == 0 || squares[i-1][j] == -1 || squares[j-1] == -1))
squares[i][j] = -1;
}
}


for(int i=row-1; i>=0; i--)
{
for(int j=col-1; j>=0; j--)
{
if(squares[i][j] == 1 &&
(i == row-1 || j == col-1 || squares[i+1][j] == -1 || squares[i][j+1] == -1))
squares[i][j] = -1;
}
}

string first,second,third;
for(int i=0; i<row; i++)
{
first="", second="", third="";
for(int j=0; j<col; j++)
{
if(squares[i][j] != 0)
{
if((i == 0 && j == 0) ||
(i == 0 && squares[i][j-1] == -1) ||
(j == 0 && squares[i-1][j] == -1) ||
(i > 0 && j > 0 && squares[i][j-1] == -1 && squares[i-1][j] == -1 && squares[i-1][j-1] == -1))
first+=' ';
else first+='+';
if((i == 0 || squares[i-1][j] == -1) && squares[i][j] == -1)
first+=chars(' ', 4);
else first+=chars('+', 4);
if((j == 0 || squares[i][j-1] == -1) && squares[i][j] == -1)
{
second+=' ';
third+=' ';
}
else
{
second+='+';
third+='+';
}
if(squares[i][j] == -1)
{
second+=chars(' ', 4);
third+=chars(' ', 4);
}
else
{
second+=chars('+', 4);
third+=chars('+', 4);
}
}
else
{
first+=chars('+', 5);
second+='+';
second+=numstring(crossword[i][j]);
third+='+';
third+=chars(' ', 4);
}
} // end of inner for

if(squares[i][col-1] == -1)
{
if(!(i == 0 || squares[i-1][col-1] == -1))
first+='+';
}
else
{
first+='+';
second+='+';
third+='+';
}
cout << trim(first) << "\n" << trim(second) << "\n" << trim(third) << "\n";
} // end of outer for

string lastline = "";
for(int j=0; j<col; j++)
{
if(squares[row-1][j] == -1 && (j == 0 || squares[row-1][j-1] == -1))
lastline+=" ";
else lastline += "+";
if(squares[row-1][j] == -1)
lastline += chars(' ', 4);
else lastline += chars('+', 4);
}

if(squares[row-1][col-1] != -1)
lastline += "+";
cout << trim(lastline);
cout << "\n\n";
}
return 0;
}

string chars(char ch, int numtimes)
{
string result="";
while(numtimes > 0)
{
result+=ch;
numtimes--;
}
return result;
}

string numstring(int n)
{
string result="";
if(n == 0)
{
result += " ";
}
else if(n >= 100)
{
result += (char)((n/100)%10 + '0');
result += (char)((n/10)%10 + '0');
result += (char)(n%10 + '0');
}
else if(n >= 10)
{
result += "0";
result += (char)('0' + (n/10)%10);
result += (char)('0' + n%10);
}
else
{
result += "00";
result += (char)('0' + n%10);
}
return result + " ";
}

string trim(string s)
{
int i;
for(i = s.length()-1; i>=0; i--)
{
if(s[i] != ' ')
break;
}
if(i == 0)
return "";
else return s.substr(0, i+1);
}[/cpp]

Posted: Fri Aug 27, 2004 8:30 pm
by GreenPenInc
I, too, think I should have AC but don't.

Here's my input:

Code: Select all

8 7
1 1 1 1 1 1 1
1 0 1 0 0 1 1
0 0 1 0 0 0 0
0 0 1 0 1 0 0
1 1 1 1 1 1 1
0 0 0 1 0 0 0
1 0 0 0 0 0 1
1 1 1 1 1 1 1
6 7
1 0 0 0 0 1 1
0 0 1 0 0 0 0
0 0 1 0 1 0 0
0 1 0 1 1 1 1
0 0 0 1 0 0 0
1 0 0 0 0 0 1
6 7
1 0 0 0 0 1 1
0 0 1 0 0 0 0
1 1 1 1 1 1 1
1 1 1 1 1 1 1
1 1 1 1 1 1 1
1 0 0 0 0 0 1
6 6
1 0 1 0 1 0
0 1 0 1 0 1
1 0 1 0 1 0
0 1 0 1 0 1
1 0 1 0 1 0
0 1 0 1 0 1
5 3
1 0 1
0 0 0
1 1 1
0 0 0
1 0 1
2 2
1 0
0 0
6 1
0
0
1
1
1
0
0 0
And, the output I get:

Code: Select all

     ++++++    +++++++++++
     +001 +    +002 +003 +
     +    +    +    +    +
+++++++++++    +++++++++++++++++++++
+004 +    +    +005 +    +006 +007 +
+    +    +    +    +    +    +    +
+++++++++++    +++++++++++++++++++++
+008 +    +    +    +    +009 +    +
+    +    +    +    +    +    +    +
+++++++++++    ++++++    +++++++++++


++++++++++++++++    ++++++++++++++++
+010 +011 +012 +    +013 +014 +    +
+    +    +    +    +    +    +    +
++++++++++++++++++++++++++++++++++++
     +015 +    +    +    +    +
     +    +    +    +    +    +
     ++++++++++++++++++++++++++

     +++++++++++++++++++++
     +001 +    +002 +003 +
     +    +    +    +    +
++++++++++++++++++++++++++++++++++++
+004 +    ++++++005 +    +006 +007 +
+    +    ++++++    +    +    +    +
++++++++++++++++++++++++++++++++++++
+008 +    ++++++    +    +009 +    +
+    +    ++++++    +    +    +    +
+++++++++++++++++++++    +++++++++++
+    ++++++010 +
+    ++++++    +
++++++++++++++++    ++++++++++++++++
+011 +012 +    +    +013 +014 +    +
+    +    +    +    +    +    +    +
++++++++++++++++++++++++++++++++++++
     +015 +    +    +    +    +
     +    +    +    +    +    +
     ++++++++++++++++++++++++++

     +++++++++++++++++++++
     +001 +    +002 +003 +
     +    +    +    +    +
++++++++++++++++++++++++++++++++++++
+004 +    +    +005 +    +    +    +
+    +    +    +    +    +    +    +
+++++++++++    +++++++++++++++++++++








     ++++++++++++++++++++++++++
     +006 +    +    +    +    +
     +    +    +    +    +    +
     ++++++++++++++++++++++++++

     ++++++    ++++++    ++++++
     +    +    +    +    +    +
     +    +    +    +    +    +
+++++++++++++++++++++++++++++++
+    ++++++    ++++++    +
+    ++++++    ++++++    +
+++++++++++++++++++++++++++++++
     +    ++++++    ++++++    +
     +    ++++++    ++++++    +
+++++++++++++++++++++++++++++++
+    ++++++    ++++++    +
+    ++++++    ++++++    +
+++++++++++++++++++++++++++++++
     +    ++++++    ++++++    +
     +    ++++++    ++++++    +
+++++++++++++++++++++++++++++++
+    +    +    +    +    +
+    +    +    +    +    +
++++++    ++++++    ++++++

     ++++++
     +001 +
     +    +
++++++++++++++++
+002 +    +    +
+    +    +    +
++++++++++++++++


++++++++++++++++
+003 +004 +    +
+    +    +    +
++++++++++++++++
     +    +
     +    +
     ++++++

     ++++++
     +001 +
     +    +
+++++++++++
+002 +    +
+    +    +
+++++++++++

++++++
+001 +
+    +
++++++
+    +
+    +
++++++








++++++
+    +
+    +
++++++

The lovely C++ which generates it (heh)

[cpp](code go bye-bye!)
[/cpp]

Any ideas? Any at all?

Posted: Fri Aug 27, 2004 9:45 pm
by little joey
Try this test:

Code: Select all

17 22
1 1 1 1 0 0 0 0 0 0 0 1 0 0 0 1 0 0 0 0 0 0
0 0 1 1 0 0 0 1 1 1 0 1 1 0 1 1 0 1 1 0 0 1
1 0 0 1 1 0 1 1 1 1 0 0 0 0 0 1 1 0 0 1 1 1
1 0 1 1 0 0 0 0 0 1 1 0 0 0 1 1 1 0 0 1 0 1
0 0 0 1 0 0 1 1 0 0 0 1 0 0 1 0 0 1 1 1 0 1
1 1 0 1 1 0 0 1 1 0 1 1 0 0 0 1 1 0 1 1 1 1
1 0 1 0 0 0 1 0 1 1 1 1 0 0 0 0 1 1 1 0 1 1
0 1 0 0 1 1 1 0 1 1 0 0 1 0 1 0 0 0 1 1 0 1
1 0 0 0 1 1 1 0 0 1 1 0 1 0 1 1 0 0 0 1 1 1
1 0 1 0 0 1 1 0 0 1 0 0 1 0 1 0 0 1 0 0 1 1
0 1 0 1 1 0 0 0 1 1 0 1 1 1 0 1 1 0 0 0 1 1
0 0 0 0 0 0 0 1 1 1 0 0 0 0 0 0 0 0 1 1 1 1
0 1 0 1 1 0 1 0 1 1 1 1 0 1 1 0 0 1 1 1 1 1
1 1 1 1 1 1 0 0 0 0 1 0 0 1 0 1 1 1 1 0 1 1
1 0 1 0 1 1 1 0 0 0 0 0 1 1 1 0 0 1 0 1 1 0
0 1 0 0 0 1 0 1 0 0 0 1 0 1 0 1 0 1 1 0 1 0
1 0 0 1 1 1 1 0 1 1 1 1 1 1 0 0 1 0 0 1 0 0
18 19
1 1 0 1 0 1 1 1 1 1 1 1 0 0 1 0 0 1 0
0 1 1 1 0 0 1 1 0 1 0 0 1 1 0 0 1 1 1
1 0 0 0 1 1 0 0 1 0 0 1 1 1 0 0 0 0 1
1 0 0 1 0 1 1 0 0 0 1 1 1 1 0 1 1 1 0
1 0 0 1 1 1 1 1 1 1 1 0 0 1 1 1 1 0 0
1 0 1 0 0 0 1 0 0 0 1 0 0 1 0 1 0 0 0
1 1 1 0 0 1 1 1 1 0 1 1 1 0 0 1 0 1 0
0 1 1 1 1 1 0 1 0 0 1 1 1 1 0 1 1 0 0
0 1 0 1 0 1 1 1 0 1 0 0 1 1 1 0 0 0 0
1 1 0 1 0 1 0 0 0 1 0 0 1 1 0 0 0 1 0
1 1 1 1 0 1 0 1 1 0 0 0 1 1 0 0 1 0 0
1 0 1 0 1 0 1 1 1 1 1 1 0 0 0 1 0 1 1
0 1 1 0 1 1 1 1 1 0 1 0 1 0 1 1 1 0 1
0 1 0 1 0 1 0 0 0 0 0 0 0 1 1 0 0 0 1
1 0 1 1 0 1 1 1 0 0 1 1 0 0 0 0 0 1 0
1 1 0 1 1 1 0 1 1 0 1 1 1 1 0 0 1 1 1
1 0 1 0 1 0 1 1 0 1 0 0 0 0 0 1 1 1 1
0 1 1 0 0 1 1 0 1 1 0 1 0 0 0 0 1 0 1
17 22
1 1 1 1 0 0 0 0 0 0 0 1 0 0 0 1 0 0 0 0 0 0
0 0 1 1 0 0 0 1 1 1 0 1 1 0 1 1 0 1 1 0 0 1
1 0 0 1 1 0 1 1 1 1 0 0 0 0 0 1 1 0 0 1 1 1
1 0 1 1 0 0 0 0 0 1 1 0 0 0 1 1 1 0 0 1 0 1
0 0 0 1 0 0 1 1 0 0 0 1 0 0 1 0 0 1 1 1 0 1
1 1 0 1 1 0 0 1 1 0 1 1 0 0 0 1 1 0 1 1 1 1
1 0 1 0 0 0 1 0 1 1 1 1 0 0 0 0 1 1 1 0 1 1
0 1 0 0 1 1 1 0 1 1 0 0 1 0 1 0 0 0 1 1 0 1
1 0 0 0 1 1 1 0 0 1 1 0 1 0 1 1 0 0 0 1 1 1
1 0 1 0 0 1 1 0 0 1 0 0 1 0 1 0 0 1 0 0 1 1
0 1 0 1 1 0 0 0 1 1 0 1 1 1 0 1 1 0 0 0 1 1
0 0 0 0 0 0 0 1 1 1 0 0 0 0 0 0 0 0 1 1 1 1
0 1 0 1 1 0 1 0 1 1 1 1 0 1 1 0 0 1 1 1 1 1
1 1 1 1 1 1 0 0 0 0 1 0 0 1 0 1 1 1 1 0 1 1
1 0 1 0 1 1 1 0 0 0 0 0 1 1 1 0 0 1 0 1 1 0
0 1 0 0 0 1 0 1 0 0 0 1 0 1 0 1 0 1 1 0 1 0
1 0 0 1 1 1 1 0 1 1 1 1 1 1 0 0 1 0 0 1 0 0
0 0
Although the first and third cases are identical, your output for these cases is not!
Please don't ask me to find the bug in your code. It has something to do with the middle case: remove it from the test file, and your output is correct again...
Funny :lol:

Happy hunting.

Posted: Fri Aug 27, 2004 11:27 pm
by GreenPenInc
Heh... that's weird alright. Guess that's why they call you Guru. ;)

For my reference, could you let me know what AC output looks like for that input? I'm still a little unclear on a few things. For instance, it's my understanding that for the black ones, you leave them blank if there's a direct path to the edge consisting only of other black ones, and you fill them in otherwise. Is that accurate?

Time to hunt for that bug :P Thanks again.

Posted: Fri Aug 27, 2004 11:35 pm
by GreenPenInc
Okay you know what's even weirder? I just got AC (well, PE) after making the following change. At the beginning of my init() method I call a method called crazy_kill_all(void), which goes as follows:

[cpp]
/* Should do nothing; might make my program work */
void crazy_kill_all(void)
{
last_row = 0;
for (int i = 0; i < MAX; i++)
{
for (int j = 0; j < MAX; j++)
{
board[j] = 0;
visited[j] = false;
}
end_of_line = MAX;
}
}
[/cpp]

Pretty crazy eh? I think it might be some subtle bug with the visited[][] array; I might want to look into that further.

EDIT: Okay I found the bug for sure. Very idiotic of me, I must say! I didn't really need the crazy_kill_all after all, just needed to change a few < signs into <= signs. Glad to be done with this one... though, I'm still a bit muddled by the PE.

Posted: Sat Aug 28, 2004 1:45 am
by little joey
Good for you that you got AC, don't worry too much about that PE. Can't remember the verdict I got, but most of the time I just ignore them. Guess you don't need that output anymore.
I like the idea of a crazy_kill_all(), although it's a sign of weakness :wink: , I should remember that trick comes time...
My Linux clock is telling me it's 1:45 in the AM, so I'm turning in now.

Problem 312

Posted: Fri Apr 15, 2005 7:34 pm
by Sakib
i dont understand what is wrong with my code?????
just getting WA.
but it seems all ok.
Any tricky input here or what?
can anyone help me????????
THANKS.

p312 TLE??

Posted: Mon May 16, 2005 11:44 am
by johnnydog33
I got PE in ZJU but got TLE on UVA
I really don't know why!
Thanks for you reply

program p312;
const di:array[1..16,1..2] of integer=((0,0),(0,1),(0,2),(0,3),
(0,4),(0,5),(1,0),(1,5),
(2,0),(2,5),(3,0),(3,1),
(3,2),(3,3),(3,4),(3,5));
var a,c:array[0..25,0..25] of boolean;
b:array[0..25,0..25] of integer;
ch:array[0..500,0..500] of char;
n,m,i,j,k,x,y,ans,p,q:integer;
yes:boolean;
procedure bfs;
const d:array[1..4,1..2] of integer=((0,1),(0,-1),(1,0),(-1,0));
var f:array[1..1000,1..2] of integer;
h,t,j,v1,v2:integer;
g:array[0..25,0..25] of boolean;
begin
h:=0;t:=1;
fillchar(f,sizeof(f),0);
fillchar(g,sizeof(g),false);
while h<t do begin
inc(h);
for j:=1 to 4 do begin
v1:=f[h,1]+d[j,1];v2:=f[h,2]+d[j,2];
if (v1>=0) and (v1<=m+1) and (v2>=0) and (v2<=n+1) and not g[v1,v2] and not a[v1,v2] then begin
g[v1,v2]:=true;
inc(t);
f[t,1]:=v1;
f[t,2]:=v2;
c[v1,v2]:=true;
end;
end;
end;
end;
begin
repeat
readln(m,n);
if (m<>0) and (n<>0) then begin
fillchar(a,sizeof(a),false);
fillchar(b,sizeof(b),0);
for i:=1 to m do begin
for j:=1 to n do begin
read(x);
if x=0 then a[i,j]:=true;
end;
readln;
end;
ans:=0;
for i:=1 to m do
for j:=1 to n do
if (a[i,j] and a[i,j+1] and not a[i,j-1]) or
(a[i,j] and a[i+1,j] and not a[i-1,j]) then begin
inc(ans);
b[i,j]:=ans;
end;
fillchar(c,sizeof(c),false);
for i:=0 to m+1 do begin
a[i,0]:=false;
a[i,n+1]:=false;
end;
for i:=0 to n+1 do begin
a[0,i]:=false;
a[m+1,i]:=false;
end;
bfs;
fillchar(ch,sizeof(ch),' ');
for i:=1 to m do
for j:=1 to n do begin
x:=1+(i-1)*3;y:=1+(j-1)*5;
if a[i,j] then begin
for k:=1 to 16 do ch[x+di[k,1],y+di[k,2]]:='+';
if b[i,j]<>0 then begin
ch[x+1,y+1]:=chr(48+(b[i,j] div 100));
ch[x+1,y+2]:=chr(48+(b[i,j] div 10) mod 10);
ch[x+1,y+3]:=chr(48+(b[i,j] mod 10));
end;
end else begin
if not c[i,j] then
for p:=0 to 3 do
for q:=0 to 5 do
ch[x+p,y+q]:='+';
end;
end;
for i:=1 to 1+m*3 do begin
for j:=1 to 1+n*5 do write(ch[i,j]);
writeln;
end;
end;
writeln;
until (m=0) and (n=0);
end.

Posted: Tue Sep 27, 2005 2:54 pm
by harlock
Hi, could anyone tell me the output for the next cases:

Code: Select all

7 7
0 0 1 1 1 0 0
0 1 0 0 0 1 0
1 0 0 0 0 0 1
1 0 0 1 0 0 1
1 0 0 0 0 0 1
0 1 0 0 0 1 0
0 0 1 1 1 0 0 
5 5
0 0 1 0 0
0 0 1 0 0
0 1 1 1 0
0 1 0 1 0
0 0 0 0 0
5 5
0 0 0 0 0
0 1 0 1 0
0 1 1 1 0
0 0 1 0 0
0 0 1 0 0
2 2
1 1
1 1
3 3
0 0 0
0 1 0
0 0 0
3 3
1 1 1
1 0 1
1 1 1
8 8
0 1 1 1 1 1 1 0
1 0 1 1 1 1 0 1
1 0 1 1 1 1 0 1
1 0 0 1 1 0 0 1
1 1 0 0 0 0 1 1
1 1 1 0 0 1 1 1
1 1 1 0 0 1 1 1
1 1 1 0 0 1 1 1
8 8
0 0 0 0 0 0 0 0
0 1 1 1 1 1 1 0
0 0 1 0 1 0 0 0
0 0 1 0 0 1 0 0
0 0 0 1 1 1 0 0
0 0 0 0 0 0 0 0
0 0 1 1 1 1 1 1
1 1 0 0 0 0 0 0
0 0
the output of my program is:

Code: Select all

+++++++++++              +++++++++++
+001 +    +              +002 +003 +
+    +    +              +    +    +
++++++++++++++++++++++++++++++++++++
+    ++++++004 +005 +006 ++++++    +
+    ++++++    +    +    ++++++    +
++++++++++++++++++++++++++++++++++++
     +007 +    +    +    +008 +
     +    +    +    +    +    +
     ++++++++++++++++++++++++++
     +009 +    ++++++010 +    +
     +    +    ++++++    +    +
     ++++++++++++++++++++++++++
     +011 +    +012 +    +    +
     +    +    +    +    +    +
++++++++++++++++++++++++++++++++++++
+013 ++++++014 +    +    ++++++015 +
+    ++++++    +    +    ++++++    +
++++++++++++++++++++++++++++++++++++
+016 +    +              +017 +    +
+    +    +              +    +    +
+++++++++++              +++++++++++

+++++++++++    +++++++++++
+001 +002 +    +003 +004 +
+    +    +    +    +    +
+++++++++++    +++++++++++
+005 +    +    +006 +    +
+    +    +    +    +    +
+++++++++++    +++++++++++
+    +              +    +
+    +              +    +
++++++    ++++++    ++++++
+    +    +007 +    +    +
+    +    +    +    +    +
++++++++++++++++++++++++++
+008 +    +    +    +    +
+    +    +    +    +    +
++++++++++++++++++++++++++

++++++++++++++++++++++++++
+001 +    +002 +    +003 +
+    +    +    +    +    +
++++++++++++++++++++++++++
+    +    +    +    +    +
+    +    +    +    +    +
++++++    ++++++    ++++++
+    +              +    +
+    +              +    +
+++++++++++    +++++++++++
+004 +005 +    +006 +    +
+    +    +    +    +    +
+++++++++++    +++++++++++
+007 +    +    +008 +    +
+    +    +    +    +    +
+++++++++++    +++++++++++









++++++++++++++++
+001 +    +002 +
+    +    +    +
++++++++++++++++
+    ++++++    +
+    ++++++    +
++++++++++++++++
+003 +    +    +
+    +    +    +
++++++++++++++++




     ++++++
     +    +
     +    +
     ++++++




++++++                             ++++++
+    +                             +    +
+    +                             +    +
+++++++++++                   +++++++++++
     +001 +                   +002 +
     +    +                   +    +
     ++++++                   ++++++
     +    +                   +    +
     +    +                   +    +
     +++++++++++         +++++++++++
     +003 +004 +         +005 +    +
     +    +    +         +    +    +
     +++++++++++++++++++++++++++++++
          +006 +007 +008 +    +
          +    +    +    +    +
          +++++++++++++++++++++
               +009 +    +
               +    +    +
               +++++++++++
               +010 +    +
               +    +    +
               +++++++++++
               +011 +    +
               +    +    +
               +++++++++++

+++++++++++++++++++++++++++++++++++++++++
+001 +    +    +    +    +    +    +002 +
+    +    +    +    +    +    +    +    +
+++++++++++++++++++++++++++++++++++++++++
+    +++++++++++++++++++++++++++++++    +
+    +++++++++++++++++++++++++++++++    +
+++++++++++++++++++++++++++++++++++++++++
+003 +004 ++++++005 ++++++006 +007 +    +
+    +    ++++++    ++++++    +    +    +
+++++++++++++++++++++++++++++++++++++++++
+008 +    ++++++009 +    ++++++010 +    +
+    +    ++++++    +    ++++++    +    +
+++++++++++++++++++++++++++++++++++++++++
+011 +    +012 ++++++++++++++++013 +    +
+    +    +    ++++++++++++++++    +    +
+++++++++++++++++++++++++++++++++++++++++
+014 +    +    +    +    +    +    +    +
+    +    +    +    +    +    +    +    +
+++++++++++++++++++++++++++++++++++++++++
+015 +    +
+    +    +
+++++++++++++++++++++++++++++++++++++++++
          +016 +    +    +    +    +    +
          +    +    +    +    +    +    +
          +++++++++++++++++++++++++++++++
but i'm not sure if this is correct.

My code is:

Code: Select all

cut after AC
Thanks

Posted: Tue Jan 17, 2006 9:11 pm
by mamun

Code: Select all

    for (int i=1; i<=n; i++) 
    { 
      if (M[i][1] == 0) elimina(i, 1); 
      if (M[i][n] == 0) elimina(i, m); 
    } 
In the above section

Code: Select all

      if (M[i][n] == 0) elimina(i, m); 
should be

Code: Select all

      if (M[i][m] == 0) elimina(i, m); 

Posted: Thu Jun 07, 2007 8:14 am
by likhan
Ac Output

Code: Select all

7 7
0 0 1 1 1 0 0
0 1 0 0 0 1 0
1 0 0 0 0 0 1
1 0 0 1 0 0 1
1 0 0 0 0 0 1
0 1 0 0 0 1 0
0 0 1 1 1 0 0
5 5
0 0 1 0 0
0 0 1 0 0
0 1 1 1 0
0 1 0 1 0
0 0 0 0 0
5 5
0 0 0 0 0
0 1 0 1 0
0 1 1 1 0
0 0 1 0 0
0 0 1 0 0
2 2
1 1
1 1
3 3
0 0 0
0 1 0
0 0 0
3 3
1 1 1
1 0 1
1 1 1
8 8
0 1 1 1 1 1 1 0
1 0 1 1 1 1 0 1
1 0 1 1 1 1 0 1
1 0 0 1 1 0 0 1
1 1 0 0 0 0 1 1
1 1 1 0 0 1 1 1
1 1 1 0 0 1 1 1
1 1 1 0 0 1 1 1
8 8
0 0 0 0 0 0 0 0
0 1 1 1 1 1 1 0
0 0 1 0 1 0 0 0
0 0 1 0 0 1 0 0
0 0 0 1 1 1 0 0
0 0 0 0 0 0 0 0
0 0 1 1 1 1 1 1
1 1 0 0 0 0 0 0
0 0
My output

Code: Select all

+++++++++++              +++++++++++
+001 +    +              +002 +003 +
+    +    +              +    +    +
++++++++++++++++++++++++++++++++++++
+    ++++++004 +005 +006 ++++++    +
+    ++++++    +    +    ++++++    +
++++++++++++++++++++++++++++++++++++
     +007 +    +    +    +008 +
     +    +    +    +    +    +
     ++++++++++++++++++++++++++
     +009 +    ++++++010 +    +
     +    +    ++++++    +    +
     ++++++++++++++++++++++++++
     +011 +    +012 +    +    +
     +    +    +    +    +    +
++++++++++++++++++++++++++++++++++++
+013 ++++++014 +    +    ++++++015 +
+    ++++++    +    +    ++++++    +
++++++++++++++++++++++++++++++++++++
+016 +    +              +017 +    +
+    +    +              +    +    +
+++++++++++              +++++++++++

+++++++++++    +++++++++++
+001 +002 +    +003 +004 +
+    +    +    +    +    +
+++++++++++    +++++++++++
+005 +    +    +006 +    +
+    +    +    +    +    +
+++++++++++    +++++++++++
+    +              +    +
+    +              +    +
++++++    ++++++    ++++++
+    +    +007 +    +    +
+    +    +    +    +    +
++++++++++++++++++++++++++
+008 +    +    +    +    +
+    +    +    +    +    +
++++++++++++++++++++++++++

++++++++++++++++++++++++++
+001 +    +002 +    +003 +
+    +    +    +    +    +
++++++++++++++++++++++++++
+    +    +    +    +    +
+    +    +    +    +    +
++++++    ++++++    ++++++
+    +              +    +
+    +              +    +
+++++++++++    +++++++++++
+004 +005 +    +006 +    +
+    +    +    +    +    +
+++++++++++    +++++++++++
+007 +    +    +008 +    +
+    +    +    +    +    +
+++++++++++    +++++++++++









++++++++++++++++
+001 +    +002 +
+    +    +    +
++++++++++++++++
+    ++++++    +
+    ++++++    +
++++++++++++++++
+003 +    +    +
+    +    +    +
++++++++++++++++




     ++++++
     +    +
     +    +
     ++++++




++++++                             ++++++
+    +                             +    +
+    +                             +    +
+++++++++++                   +++++++++++
     +001 +                   +002 +
     +    +                   +    +
     ++++++                   ++++++
     +    +                   +    +
     +    +                   +    +
     +++++++++++         +++++++++++
     +003 +004 +         +005 +    +
     +    +    +         +    +    +
     +++++++++++++++++++++++++++++++
          +006 +007 +008 +    +
          +    +    +    +    +
          +++++++++++++++++++++
               +009 +    +
               +    +    +
               +++++++++++
               +010 +    +
               +    +    +
               +++++++++++
               +011 +    +
               +    +    +
               +++++++++++

+++++++++++++++++++++++++++++++++++++++++
+001 +    +    +    +    +    +    +002 +
+    +    +    +    +    +    +    +    +
+++++++++++++++++++++++++++++++++++++++++
+    +++++++++++++++++++++++++++++++    +
+    +++++++++++++++++++++++++++++++    +
+++++++++++++++++++++++++++++++++++++++++
+003 +004 ++++++005 ++++++006 +007 +    +
+    +    ++++++    ++++++    +    +    +
+++++++++++++++++++++++++++++++++++++++++
+008 +    ++++++009 +    ++++++010 +    +
+    +    ++++++    +    ++++++    +    +
+++++++++++++++++++++++++++++++++++++++++
+011 +    +012 ++++++++++++++++013 +    +
+    +    +    ++++++++++++++++    +    +
+++++++++++++++++++++++++++++++++++++++++
+014 +    +    +    +    +    +    +    +
+    +    +    +    +    +    +    +    +
+++++++++++++++++++++++++++++++++++++++++
+015 +    +
+    +    +
+++++++++++++++++++++++++++++++++++++++++
          +016 +    +    +    +    +    +
          +    +    +    +    +    +    +
          +++++++++++++++++++++++++++++++



Posted: Thu Aug 09, 2007 10:50 am
by pooya
What is the output for
1 0
or
0 1

Posted: Thu Aug 09, 2007 10:54 am
by mf
pooya wrote:What is the output for
1 0
or
0 1
It's not a valid input.


For this input:

Code: Select all

1 2
1 0
1 2
0 1
0 0
my output is:

Code: Select all

     ++++++
     +    +
     +    +
     ++++++

++++++
+    +
+    +
++++++