首页 > 其他 > 详细

基础训练 完美的代价

时间:2019-02-03 21:17:10      阅读:160      评论:0      收藏:0      [点我收藏+]

完美的代价

/************提示:是考的贪心策略*****************/
#include<iostream>
using namespace std;
int main(){
    int n, flag=0, cnt=0;
    cin>>n;
    string str;
    cin>>str;
    for(int i=0; i<n-1; i++){
        for(int j=n-1; j>=i; j--){
            if(j==i){
                if(flag==1||str.size()%2==0){
                    cout<<"Impossible"<<endl;
                    return 0;
                }
                flag=1;
                cnt+=str.size()/2-i;
            }else if(str[i]==str[j]){
                for(int k=j; k<n-1; k++){
                    swap(str[k], str[k+1]);
                    cnt++;
                }
                n--;
                break; 
            }
        }       
    }
    cout<<cnt<<endl;
    return 0;
}

基础训练 完美的代价

原文:https://www.cnblogs.com/A-Little-Nut/p/10350991.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!