大佬求助

P1434 [SHOI2002] 滑雪

VALLEYKING @ 2019-08-11 21:58:46

include<bits/stdc++.h>

using namespace std; int a[100][100];//山体高度 int f[100][100];//路线长度 int main(){ int n,m; cin>>n>>m; for(int i=1;i<=n;i++) for(int j=1;j<=m;j++){ cin>>a[i][j]; f[i][j]=1; }

for(int i=1;i<=n;i++) for(int j=1;j<=m;j++){ if(a[i][j]<a[i+1][j]) f[i+1][j]+=f[i][j]; if(a[i][j]<a[i][j+1]) f[i][j+1]+=f[i][j]; if(a[i][j]<a[i-1][j]) f[i-1][j]+=f[i][j]; if(a[i][j]<a[i][j-1]) f[i][j-1]+=f[i][j]; } for(int i=1;i<=n;i++){//每个点的路线最优****长度 for(int j=1;j<=m;j++) cout<<f[i][j]<<" "; cout<<endl; } return 0;

}1.


by zhjxaoini @ 2019-08-11 21:59:43

希望更丰富的展现?使用Markdown


by 冥诺在线发呆 @ 2019-08-11 22:05:04

希望更丰富的展现?使用Markdown


by D447H @ 2019-08-16 16:13:38

#include<bits/stdc++.h>
using namespace std; 
int a[100][100];//山体高度 
int f[100][100];//路线长度 
int main()
{ 
    int n,m; 
    cin>>n>>m; 
    for(int i=1;i<=n;i++) 
    for(int j=1;j<=m;j++)
    { 
        cin>>a[i][j]; 
        f[i][j]=1; 

    }
    for(int i=1;i<=n;i++) 
    for(int j=1;j<=m;j++)
    { 
        if(a[i][j]<a[i+1][j]) 
        f[i+1][j]+=f[i][j]; 
        if(a[i][j]<a[i][j+1]) 
        f[i][j+1]+=f[i][j]; 
        if(a[i][j]<a[i-1][j]) 
        f[i-1][j]+=f[i][j]; 
        if(a[i][j]<a[i][j-1]) 
        f[i][j-1]+=f[i][j]; 

    } 
    for(int i=1;i<=n;i++)
    {//每个点的路线最优****长度 
        for(int j=1;j<=m;j++) 
        cout<<f[i][j]<<" "; 
        cout<<endl; 

    } 
    return 0;

}

帮你整理一下


by HeTaiyu @ 2019-08-25 14:32:39

希望更丰富的展现?使用Markdown!


|