90,求助大佬

P1434 [SHOI2002] 滑雪

xlxl @ 2019-04-14 19:18:41

//ski

include<bits/stdc++.h>

using namespace std; int n,m,a[102][102],cnt,maxn,ans,f[102][102],tmp; int dx[4]={0,0,1,-1}; int dy[4]={1,-1,0,0}; int dfs(int x,int y){ if(f[x][y]) return f[x][y]; maxn=1; for(int i=0;i<4;i++){ int nx=x+dx[i]; int ny=y+dy[i]; if(nx>0&&ny>0&&nx<=n&&ny<=m&&a[nx][ny]>a[x][y]){ tmp=dfs(nx,ny)+1; maxn=max(maxn,tmp); } } f[x][y]=maxn; return maxn; } int main(){ // freopen("ski6.in","r",stdin); // freopen("ski.out","w",stdout); ios::sync_with_stdio(false); cin>>n>>m; for(int i=1;i<=n;i++)
for(int j=1;j<=m;j++)
cin>>a[i][j]; for(int i=1;i<=n;i++){ for(int j=1;j<=m;j++){ maxn=dfs(i,j); f[i][j]=maxn;
ans=max(ans,maxn); } }
cout<<ans<<endl; return 0; }


by 我不认识你 @ 2019-04-14 19:20:11

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


by Vanity_ @ 2019-04-14 19:55:48

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


by t162 @ 2019-04-14 19:58:02

xlxl(大雾


by purinliang @ 2019-04-14 20:35:25

#include<bits/stdc++.h>
using namespace std;

int n,m,a[102][102],cnt,maxn,ans,f[102][102],tmp;
int dx[4]= {0,0,1,-1};
int dy[4]= {1,-1,0,0};
int dfs(int x,int y) {
    if(f[x][y])
        return f[x][y];
    int maxn=1;
    for(int i=0; i<4; i++) {
        int nx=x+dx[i];
        int ny=y+dy[i];
        if(nx>0&&ny>0&&nx<=n&&ny<=m&&a[nx][ny]<a[x][y]) {
            tmp=dfs(nx,ny)+1;
            maxn=max(maxn,tmp);
        }
    }
    f[x][y]=maxn;
    return maxn;
}
int main() { // freopen("ski6.in","r",stdin); // freopen("ski.out","w",stdout);
    ios::sync_with_stdio(false);
    cin>>n>>m;
    for(int i=1; i<=n; i++)
        for(int j=1; j<=m; j++)
            cin>>a[i][j];
    for(int i=1; i<=n; i++) {
        for(int j=1; j<=m; j++) {
            maxn=dfs(i,j);
            f[i][j]=maxn;
            ans=max(ans,maxn);
        }
    }
    cout<<ans<<endl;
    return 0;
}

两个bug,一个是a[nx][ny]<a[x][y],另一个是int maxn=1。 第一个bug不符合题目的语义,第二个bug使用了全局变量,在dfs过程中瞎改一通。


by wing_离殇 @ 2019-04-15 13:50:48

#include<bits/stdc++.h>
using namespace std;
int main() {
    long long b,p,k,a,ans;
    cin>>b>>p>>k;
    a=pow(b,p);
    ans=a%k;
    cout<<ans<<endl;
    return 0;
}
话说萌新随便拿个代码想看看可不可以骗测试点再if大法

没想到

前方高能

评测结果


by wing_离殇 @ 2019-04-15 13:53:29

顺便叨叨一句

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

|