Codeforces 123A. Prime Permutation
来源:互联网 发布:网络下单系统 编辑:程序博客网 时间:2024/05/20 14:15
看了题解找的规律之后,其实很简单,但是还是做了好久...
规律就是:2到len/2和len/2之后的合数位置上的字母都必须一样,其余的补全就好了,下标从1开始会比较方便!
#include <iostream>#include <cstdio>#include <algorithm>#include <cstring>using namespace std;bool is_prime(int x){if(x == 1)return false;for(int i=2; i*i<=x; i++)if(x % i == 0)return false;return true;}char s[1005];int cnt[30];char res[1005];int main(){while(cin >> s){memset(cnt, 0, sizeof(cnt));memset(res, 0, sizeof(res));int maxn=0;int index=-1;int flag=1;int len = strlen(s);if(len <= 3){cout << "YES" << endl;cout << s << endl;continue;}for(int i=0; i<len; i++)cnt[s[i]-'a']++;for(int i=0; i<30; i++){if(maxn < cnt[i]){maxn = cnt[i];index = i;}}char s2 = index+'a';for(int i=1; i<=len; i++){if(i >= 2 && i <= len/2 || i>len/2 && !is_prime(i)){res[i] = s2;maxn--;cnt[index]--;}if(maxn < 0){flag=0;break;}}for(int i=1; i<=len; i++){if(res[i] == 0){for(int j=0; j<30; j++){if(cnt[j]){res[i] = j + 'a';cnt[j]--;break;}}}}if(!flag)cout << "NO" << endl;else{cout << "YES" << endl;for(int i=1; i<=len; i++)cout << res[i];cout << res << endl;}}return 0;}
0 0
- Codeforces 123A. Prime Permutation
- codeforces 123A/124C Prime Permutation
- codeforces 123A A. Prime Permutation(数论+构造)
- Codeforces-233A Perfect Permutation
- CodeForces 482A Diverse Permutation
- CodeForces 482A Diverse Permutation
- CodeForces 233A Perfect Permutation
- CodeForces Round 176Div1 A Lucky permutation
- Codeforces 233A-Perfect Permutation(规律)
- codeforces 482A Diverse Permutation 贪心
- Codeforces 482A Diverse Permutation(构造)
- Diverse Permutation - CodeForces 482 A 水题
- codeforces #303A Lucky Permutation Triple 构造
- codeforces 676A Nicholas and Permutation
- CodeForces 676A Nicholas and Permutation
- 【CodeForces 676】A - Nicholas and Permutation
- Codeforces 303A Lucky Permutation Triple【思维】
- Codeforces 864D Make a Permutation!
- Aizu 1333 Beautiful Spacing
- Redis源码解析(一):简介
- HTTP协议详解
- Observer pattern
- 实习集锦2
- Codeforces 123A. Prime Permutation
- android下的数据存储方式
- Sicily 1535. Give Me an E
- Sicily 2371. Show Me The Fax
- single_linked_list_int
- iOS 里面 Swift与Objective-C混编,Swift与C++混编的一些比较
- HDU 1358 KMP
- Java内部类的作用分析
- centos6.6 install xiaomi wifi