| ||||||||||
| Online Judge | Problem Set | Authors | Online Contests | User | ||||||
|---|---|---|---|---|---|---|---|---|---|---|
| Web Board Home Page F.A.Qs Statistical Charts | Current Contest Past Contests Scheduled Contests Award Contest | |||||||||
more patienceIn Reply To:救命啊!!!我快疯了,怎么还不对阿?题号:1088 Posted by:zero2004 at 2005-07-18 16:20:22 > #include<iostream.h>
>
> int main(){
> int g[100][100]={0};
> int b[10000][2]={0};
> int l[100][100]={0};
> int c[100][100]={0};
> int dx[5]={0,0,1,0,-1};
> int dy[5]={0,-1,0,1,0};
> int Max=0;
> int i,j,k;
> int x,y;
> int n1,n2;
> do{
> cin>>n1>>n2;
> }while(n1<1||n1>100||n2<1||n2>100);
> for(i=0;i<n1;i++)
> for(j=0;j<n2;j++)
> do{
> cin>>g[i][j];
> }while(g[i][j]<0||g[i][j]>10000);
>
> for(i=0;i<n1*n2;i++){
> Max=0;
> for(j=0;j<n1;j++){
> for(k=0;k<n2;k++){
> if(c[j][k]==0&&g[j][k]>Max){
> Max=g[j][k];
> x=j;
> y=k;
> }
> }
> }
>
> b[i][0]=x;
> b[i][1]=y;
> c[x][y]=1;
> }
>
> for(i--;i>=0;i--){
> j=1;Max=0;k=0;
> while(j<5){
> x=b[i][0]+dx[j];
> y=b[i][1]+dy[j];
> if(x>=0&&x<n1&&y>=0&&y<n2){
> if(g[x][y]>=g[b[i][0]][b[i][1]]){
> j++;
> }else{
> if(c[x][y]>Max){
> Max=c[x][y];
> k=j;
> }
> j++;
> }
> }else j++;
> }
>
> c[b[i][0]][b[i][1]]+=Max;
> l[b[i][0]][b[i][1]]=k;
> }
> Max=0;
>
> for(i=0;i<n1;i++){
> for(j=0;j<n2;j++){
>
> if(c[i][j]>Max){
> Max=c[i][j];
> x=i;
> y=j;
> }
> }
> }
> cout<<Max;
>
> }
Followed by: Post your reply here: |
All Rights Reserved 2003-2013 Ying Fuchen,Xu Pengcheng,Xie Di
Any problem, Please Contact Administrator