求调90pts代码
查看原帖
求调90pts代码
1025958
511_Juruo_wyk楼主2024/3/23 18:34

优化后的暴搜,没有 TLE,但是第二个点 WA 了。

#include<bits/stdc++.h>
using namespace std;
int a[10]={0,26,325,2600,14950,65780,230230},sum;//打表应该没有错
string s,k;
void dfs(char c,string now){
    if(now==s){
        cout<<sum+a[s.size()-1]+1;
        exit(0);
    }
    if(now.size()==s.size()){
        sum++;
        return;
    }
    for(char i=c+1;i<='z';i++){
        k=now;
        dfs(i,k+i);
    }
}
int main(){
    cin>>s;
    for(int i=1;i<=6;i++)a[i]+=a[i-1];
    dfs('a'-1,"");
    return 0;
}
2024/3/23 18:34
加载中...