3.19

原题链接

题外话

可算能做出来一道题了qaq

题意

让你把一个字符串排成字典序最小的形式,移动方式是奇数和偶数相邻,这两个数可以无限以动

思路

用两个数组,分别存奇偶,然后处理一下就好,挺简单的(代码写的挺丑的。。)

代码

///*
//正在播放《フリージア》
//1:21  ━━━━━━●─────   5:35
//   ?   ?   ??   ?   ?
//```````'`...```````''`````````````'````````````````'`.`''
//```````''..`';;'```''```'''''''''''''`````````````````'':
//.````''''':;;!!:````'````'''''''''''``````````````````'':
//``''''''':;;;;;'```'``````''```````````____________```'':
//`````````:;;!;'```````````'```````'```|   所以说   |'``'':
//```````'|$&$%:````````````'```````````|不要停下来啊|''''':
//````'''!$&&&|'```````````'''::''::''''/ (指AC)  |':'':::
//````'':|&&&$!'`````'''''''::.....`;!;'/_________|''``'::
//  ....'|&&@$!'........```:!;'....`:;:```````````````````'
//..````;$&&&$!:''``````'':|%%!::;|%$$!::::::::''::::::::::
//``````!&&@&&|:'````````':|$$$$$$$$$|:':::::::::::::::::::
//`````:%&@@@@@@@@&&&@@@@&&&&@@@@@@@&&&|::::::::':::::::::;
//`````.```':|$@@@@@@@@@@@@@@@@@@@@@@@@###@@&&$|;:::'::::::
//````````````';|$&@@@@@@@@@###@@@@@@########@@@@$!''''::::
//`````````..````:|%$@@@@@#########@#########@@@@&!''''::::
//`````````````````:|&########################@@@$;::::::::
//``````````````````:!$@########################@%;:::'::::
//``````````..``````':|&#######################@@&!''''''::
//''''::'''`.`''''''':|@#######################@@&|:'`.`';!
//:::::::::``'''''';%@######################@@##@@&!::'';;;
//::;::::::`.''''';%@@@@####################$%@##@@%;:'':;!
//:;;;;::::``':;%@@@#########################&%&##@@|:'';;!
//;;!;;;;;;'`::;%@#############################@@##@$!'';!!
//;;;;;;;;:``':::::;|$@############################@$!'`;!!
//::;;;;;;:'`'::::::;!$@#######################&&@$$$;``:;;
//`````````..````````'|@#####################$;!$$$&@@|''':
//'''''''''''''':'''''|@#########@&@##########@@####@@&%|!!
//''''''''':'''::'':''!&########&!|&@##########&&####&%|!||
//:::::'''::::::::::::!&########|:;|$@#########@&###&%||||!
//:::::::'''''':::::::!&#######@!:;!!$@########@$&##@%||||!
//
//                    だからよ...止まるじゃねえぞ
// */




#include <vector>
#include <algorithm>
#include <string>
#include<cstring>
#include <iostream>
#include <set>
#include <map>
#include <stack>
#include <queue>
#include <unordered_map>
#include <bitset>
#include <cassert>
#include <chrono>
#include <random>
#include <iomanip>
#include <unordered_set>
#include <ctime>
#include <chrono>
using namespace std;
// #define  ll long long
const int N =1e5+10;
#define PII pair<int , int > 
#define all(x) (x).begin(),(x).end()
#define rall(x) (x).rbegin(),(x).rend()
#define pb push_back
#define sz(x) (int)(x).size()
typedef long long ll;
typedef long double ld;
mt19937 rnd(chrono::high_resolution_clock::now().time_since_epoch().count());
ll n , m ,t ;
ll ar[1000010];
#define __i __int128
//ll mod = 1e9+7;
vector<ll > div(ll x){
	vector<ll > res;
	for(ll i=1 ;i<=x/i;i++) {
		if(x%i==0){
			res.push_back(i);
			if(i!=x/i)res.push_back(x/i);
		}
	}
	sort(res.begin(), res.end());
	return res;
}
int main(){
    ios::sync_with_stdio(0);
    cin.tie(0), cout.tie(0);
	cin >>n;
 	while(n--){
 		string s;cin >>s;
 		vector<char>o,e;
 		for(int i=0 ;i<s.size();i++) {
 			if((s[i]-'0')%2==0)e.pb(s[i]);
 			else  o.pb(s[i]);
		 }
		 //cout<<sz(o)<<" "<<sz(e)<<endl;
		 int num1=0,num2=0;int f=0;
		for(int i=0;i<s.size();i++){
			if((s[i]-'0')%2==0){
				if(num2!=sz(o)&&num1!=sz(e)){
					while(e[num1]<=o[num2]){
						cout<<e[num1];num1++;
						if(num1==sz(e))break;
					}
					cout<<o[num2];num2++;
				}
				else{
					while(num1!=sz(e)){
						cout<<e[num1];num1++;
					}
					f=1 ;
					break;
				}
			}
			if((s[i]-'0')%2==1){
					if(num2!=sz(o)&&num1!=sz(e)){
					while(o[num2]<=e[num1]){
						cout<<o[num2];num2++;
						if(num2==sz(o))break;
					}cout<<e[num1];num1++;
				}
				else{
					while(num2!=sz(o)){
						cout<<o[num2];num2++;
					}
					f=2;
					break;
				}
				
			}
		}
		//cout<<num1<<endl;
		if(f==1){
			while(num2!=sz(o)){
						cout<<o[num2];num2++;
					}
		}
		if(f==2){
			while(num1!=sz(e)){
						cout<<e[num1];num1++;
					}
		}
		cout<<endl;
	 }
    return 0;

}

原文地址:https://www.cnblogs.com/gaohaoy/p/12521989.html