Run ID 作者 问题 语言 测评结果 分数 时间 内存 代码长度 提交时间
173645 何阳熙 Jam的计数法 C++ 无测评数据 0 0 MS 0 KB 1293 2024-08-20 22:34:07

Tests(0/0):


#include<bits/stdc++.h> #define MAX 27 using namespace std; int s,t,w; vector<int> arr; map<int,char> mp; int cur_index = 0; void init() { for(int i=1;i<=26;i++) { mp[i]=char(i+96); } } bool check() { int size = arr.size(); int temp; for(int i=size-1;i>=0;i--) { temp = size-i; if(arr[i]<t+1-temp) { return false; } } return true; } void find_next() { int size = arr.size(); int temp; for(int i=size-1;i>=0;i--) { temp = size-i; if(arr[i]<t+1-temp) { arr[i]+=1; for(int j=i+1;j<size;j++) { arr[j]=arr[j-1]+1; } break; } } } void fun() { if(cur_index>=1) { for(int i=0;i<arr.size();i++) { cout<<mp[arr[i]]; } cout<<"\n"; } if(check()||cur_index>=5) { return; } find_next(); cur_index+=1; fun(); } int main() { cin>>s>>t>>w; char c; int temp; for(int i=0;i<w;i++) { cin>>c; temp = int(c)-int('a')+1; arr.push_back(temp); } init(); fun(); return 0; }