题目链接:
题意: 根据自定义的字典序: 'A'<'a'<'B'<'b'<...<'Z'<'z' 和输入的字符串(最长为13), 输出按新字典序的全排列.
分析: 题目简单, 但是要处理好映射关系.
#include#include #include using namespace std;int mp[13]; // 字符串中的各个字符按相对大小映射到mp中.int main(){ int T,n; cin>>T; while(T--){ string s; cin>>s; int len = s.length(); for(int i=0;i ='a' && s[i] <= 'z'){ mp[i] = (s[i]-'a')*2+1; }else{ mp[i] = (s[i]-'A')*2; } } sort(mp,mp+len); do{ for(int i=0;i