zoukankan      html  css  js  c++  java
  • Codeforces Round #517 (Div. 2, based on Technocup 2019 Elimination Round 2)D(思维,DP,字符串)

    #include<bits/stdc++.h>
    using namespace std;
    char c[2007][2007];
    char ans[4007];
    int s[2007][2007];
    int main(){
        memset(s,-1,sizeof(s));
        int n,k;
        scanf("%d%d",&n,&k);
        getchar();
        for(int i=1;i<=n;i++){
            for(int j=1;j<=n;j++){
                scanf("%c",&c[i][j]);
            }
            getchar();
        }
        s[1][1]=k;//初始可改变的次数
        char mn=0;
        char tmp=0;
        for(int i=1;i<=n*2-1;i++){
            mn='z';
            for(int j=1;j<=i;j++){
                if(j>n||i-j+1>n)
                    continue;
                if(s[j][i-j+1]>-1){//可达位置
                    tmp=c[j][i-j+1];
                    if(tmp!='a'&&s[j][i-j+1]>0)//改变机会未用完
                        tmp='a';
                    mn=min(mn,tmp);
                }
            }
            ans[i]=mn;//i可走到的位置的最小值
            for(int j=1;j<=i;j++){
                if(j>n||i-j+1>n)
                    continue;
                if(s[j][i-j+1]>-1){
                    tmp=c[j][i-j+1];
                    if(tmp!='a'&&s[j][i-j+1]>0){//贪心,前面有机会能变a就变
                        tmp='a';
                        s[j][i-j+1]--;
                    }
                    if(tmp==mn){//可行出路之一
                        if(j<n)
                            s[j+1][i-j+1]=max(s[j+1][i-j+1],s[j][i-j+1]);//走改变少的路
                        if(i-j+1<n)
                            s[j][i-j+2]=max(s[j][i-j+2],s[j][i-j+1]);//走改变少的路
                    }
                }
            }
            printf("%c",ans[i]);
        }
        return 0;
    }

    保持热爱 不懈努力 不试试看怎么知道会失败呢(划掉) 世上无难事 只要肯放弃(划掉)
  • 相关阅读:
    xdg-open filename 以相应的程序 打开文件
    列出zip文件内全部内容 当前目录下的所有文件压缩成zip格式的文件(file.zip)
    网线的制做
    多少天以后的时期和多少天以前的日期
    更数数据库用户密码
    tengine-2.1.0 源码安装
    inode
    mysql 查看用户的权限
    SQL Server 2008 R2占用内存越来越大两种解决方法
    SQL死锁知识及解决办法
  • 原文地址:https://www.cnblogs.com/ldudxy/p/10030014.html
Copyright © 2011-2022 走看看