|  | 
|  | 
| back to board | I always wa in test 4,please help me,thank you!!! Please tell me the reason or give me the t4,thank you!This is my program:
 #include <cstdio>
 #include <iostream>
 #include <cstring>
 using namespace std;
 int n,result=0,xia=0,rxia;
 int line[110][2],era[110][2],fera[110][2];
 void init()
 {
 int i,j;
 scanf("%d",&n);
 for(i=1;i<=n;i++)
 {
 scanf("%d %d",&line[i][0],&line[i][1]);
 if(line[i][0]>line[i][1])
 swap(line[i][0],line[i][1]);
 }
 for(i=1;i<n;i++)
 for(j=i+1;j<=n;j++)
 {
 if(line[j][0]<line[i][0])
 {
 swap(line[i][0],line[j][0]);
 swap(line[i][1],line[j][1]);
 }
 if(line[j][0]==line[i][0])
 if(line[j][1]<line[i][1])
 {
 swap(line[i][0],line[j][0]);
 swap(line[i][1],line[j][1]);
 }
 }
 }
 void jilu(int i)
 {
 xia++;
 era[xia][0]=line[i][0];
 era[xia][1]=line[i][1];
 }
 void copyera()
 {
 int i;
 for(i=1;i<=xia;i++)
 {
 fera[i][0]=era[i][0];
 fera[i][1]=era[i][1];
 }
 }
 void solve()
 {
 int i,x,temp=1,now;
 for(x=1;x<=n;x++)
 {
 xia=0;
 temp=1;
 memset(era,0,sizeof(era));
 xia++;
 era[xia][0]=line[x][0];
 era[xia][1]=line[x][1];
 now=line[x][1];
 for(i=x+1;i<=n;i++)
 if(line[i][0]>=now)
 {
 temp++;
 now=line[i][1];
 jilu(i);
 }
 if(temp>result)
 {
 result=temp;
 copyera();
 rxia=xia;
 }
 }
 printf("%d\n",result);
 for(i=1;i<=rxia;i++)
 printf("%d %d\n",fera[i][0],fera[i][1]);
 }
 int main()
 {
 init();
 solve();
 return(0);
 }
 
 Thank you very much!!!
Re: I always wa in test 4,please help me,thank you!!! Posted by best  24 Feb 2013 18:53Maybe you forget sort first just like me. | 
 | 
|