心如止水
Je n'ai pas le temps
posts - 400,comments - 130,trackbacks - 0
一开始没有注意到“在满足其他条件的同时,按最小字典序输出”。英文读题还需要练习啊~唉。
以下是我的代码:
#include<iostream>
#include
<string>
#include
<algorithm>
#include
<cstdio>
using namespace std;
const string kStr("AJAJAJAJAJASASASASASABABABABABAKAKAKAKAKATUTUTUTUTUCUCUCUCUCULULULULULUDUDUDUDUDUMUMEMEMEMEVEVEVEVEVENENENENENEWEWEWEWEWEFEFEFOFOFOXOXOXOXOXOGOGOGOGOGOPOPOPOPOPOYOYOYOYIYIHIHIHIHIHIQIQIQIQIQIZIZIZIZIZIRIRIRIRIR");

int main()
{
    
int T;
    cin
>>T;
    
for(int case_num=1;case_num<=T;case_num++)
    {
        
int n;
        cin
>>n;

        
string ans(kStr.substr(0,n));
        
string odd,even;
        
for(int i=0;i<n;i+=2)
            odd
+=ans[i];
        
for(int i=1;i<n;i+=2)
            even
+=ans[i];
        sort(odd.begin(),odd.end());
        sort(even.begin(),even.end());

        cout
<<"Case "<<case_num<<"";
        
for(int i=0;i<n;i++)
            
if(i&1)
                cout
<<even[i>>1];
            
else
                cout
<<odd[i>>1];
        cout
<<endl;
    }

    
return 0;
}
posted on 2011-04-09 13:30 lee1r 阅读(444) 评论(0)  编辑 收藏 引用 所属分类: 题目分类:排序

只有注册用户登录后才能发表评论。
网站导航: 博客园   IT新闻   BlogJava   知识库   博问   管理