CodeForces -Oh Those Palindromes
題意:給一個字串,對字串重新排列使得該字串含有的迴文子串數目最多。
題解:先統計每種字元的個數,最開始卡在瞭如何組合兩種或多種字元使迴文子串最多,看官方題解,某種字元個數為X,包含X(X+1)/2個迴文子串,只需要把每種字元放一起就行了。
#include<cstdio> #include<cstdlib> #include<algorithm> #include<iostream> #include<math.h> #include<queue> #include<stack> #include<cstring> #include<string> //#include<map> typedef long long LL; using namespace std; char s[100000]; int n; int cmp(char a, char b) { return a > b; } int main() { ios_base::sync_with_stdio(0);cin.tie(0);cout.tie(0); cin >> n; cin >> s; sort(s, s+ n, cmp); for (int i = 0; i < n; i++)cout << s[i]; }
相關推薦
CodeForces -Oh Those Palindromes
題目連結 題意:給一個字串,對字串重新排列使得該字串含有的迴文子串數目最多。 題解:先統計每種字元的個數,最開始卡在瞭如何組合兩種或多種字元使迴文子串最多,看官方題解,某種字元個數為X,包含X(X+1)/2個迴文子串,只需要把每種字元放一起就行了。 #include<cstdio&
cf1063A Oh Those Palindromes (貪心)
pan 回文 sort amp ons 個數 esp 是把 回文子串 給一些字符 求它們能拼成的字符串 的回文子串的個數最大值 對應的那個字符串 就是把相同的都放一起是最優的,排下序就行了... 1 #include<bits/stdc++.h>
CF1063A Oh Those Palindromes
思路 hose 證明 ali str 數量 esp 相等 style 思路: 排序後輸出即可。 證明: 令Nx表示字母x的數量,由於回文子串的首尾字母必須相等,那麽即使所有以字母x開頭和結尾的子串都是回文串,回文子串總數也不過Na * (Na + 1) / 2 + Nb *
cf516div1A Oh Those Palindromes 結論+思維
題意 給一個長度為n的字串,問如何重組使得字串中迴文的子串數目最多。例如aaa的迴文子串個數是a,a,a,aa,aa,aaa,一共6個。 題解 一個出現x次的字元c,能構成的迴文子串個數是
CF1063A Oh Those Palindromes 奇技淫巧
傳送門(當然上洛咕能搜到) 求指定字串最多回文子串個數 Ssy太強了... 學到一個新東西 就是如果一個字元有x個 那麼它能產生的最多的迴文串個數為C(x,2) 可以理解為選擇兩個字母作為邊界 然後發現 如果所有一樣的字母全都拼在一起 那麼總個數就是C(x,2) 所以答案就是一樣的放一起就OK
Codeforces1064C——Oh Those Palindromes
給一個字串,叫你重新排序,使得該字串的權值最大,這個權值由該字串所有是迴文串的子串(包括本身,也包括單個字元)的長度之和 想了一個xjb貪心的演算法,然後還沒碼完,隊友發現直接排序即可… 就是把相同的字元放一起,也算是一種貪心吧,原理未知 過了 程式碼: #in
Oh Those Palindromes
https://vjudge.net/problem/CodeForces-1064C 這是一個讓我窒息的題目 窒息 窒息 窒息 #include <iostream> #include <algorithm> using namespace std; char
cf#516C. Oh Those Palindromes(最多回文子串的字串排列方式,字典序)
http://codeforces.com/contest/1064/problem/C 題意:給出一個字串,要求重新排列這個字串,是他的迴文子串數量最多並輸出這個字串。 題解:字典序排列的字串迴文子串最多。 1 #include<bits/stdc++.h> 2 using n
Codeforces 245H Queries for Number of Palindromes:區間dp
clu stdio.h span blog href 字符 space sca 題目 題目鏈接:http://codeforces.com/problemset/problem/245/H 題意: 給你一個字符串s。 然後有t個詢問,每個詢問給出x,y,問你區
【CodeForces】914 E. Palindromes in a Tree 點分治
統計 bool truct oot print i++ rom tar edge 【題目】E. Palindromes in a Tree 【題意】給定一棵樹,每個點都有一個a~t的字符,一條路徑回文定義為路徑上的字符存在一個排列構成回文串,求經過每個點的回文路徑數。n&l
【CodeForces - 245H 】Queries for Number of Palindromes (帶容斥的區間dp)
題幹: You've got a string s = s1s2... s|s| of length |s|, consisting of lowercase English letters. There also are q qu
codeforces 568A A. Primes or Palindromes?(打表+暴力列舉)
題目連結: 題目大意: 給出兩個整數p,q,設A=pq,sum1[i]為≤i的素數的個數,sum2[i]為≤i的回文數的個數,問sum1[i]≤A⋅sum2[i]的最大的i是多少 題目
Codeforces 570E Pig and Palindromes : DP+滾動
最近在泛刷CF,感覺這種題……反正就很眼熟。好吧其實我是看到Palindrome就決定做他了…… 題意: 給出一個n*m(n,m<=500)的矩形區域,每個格子上有一個小寫字母,從(0,0)出發,
【Codeforces 464A】No to Palindromes!
clas scan 嘗試 com 序列 不用 codeforce amp ret 【鏈接】 我是鏈接,點我呀:) 【題意】 題意 【題解】 因為原序列沒有任何長度超過2的回文串。 所以,我們在改變的時候,只要時刻保證改變位置s[i]和s[i-1]以及s[i-
hdu 4719 Oh My Holy FFF(dp線段樹優化)
origin end should adding href ast left code padding Oh My Holy FFF Time Limit: 5000/2500 MS (Java/Others) Memory Limit: 65535/65535
Codeforces 803G Periodic RMQ Problem ST表+動態開節點線段樹
ces 細節 ren urn 區間覆蓋 d+ ins cstring pro 思路: (我也不知道這是不是正解) ST表預處理出來原數列的兩點之間的min 再搞一個動態開節點線段樹 節點記錄ans 和標記 lazy=-1 當前節點的ans可用 lazy=0 沒被
codeforces 798C Mike and gcd problem
opera can sample pan using str ssl else font C.Mike and gcd problem Mike has a sequence A?=?[a1,?a2,?...,?an] of length n. He cons
【推導】Codeforces Round #411 (Div. 1) A. Find Amir
div sca ace space for amp clu ret blog 1 2 3 4 5 6 7 4-5-3-6-2-7-1 答案是(n-1)/2 #include<cstdio> using namespace std; int n; int mai
Codeforces 55D Beautiful numbers(數位dp)
pac urn etc number div clu 能夠 是我 tdi 題目大意:T(<=10)組數據,求[a,b]能夠被其每個數位的數都整除的數(a,b<=9*10^18) 這題差一點就想出來了,可是最後一步好難想也好妙啊 首先這個數能夠整除各個
A - Superset CodeForces - 97B(人生第一個分治法,感覺,像二分啊。。)
但是 ++ 是什麽 force else super 結構體 運算 代碼 /* 分治法,第一次做不是很懂,借鑒了神犇代碼,但實操之後感覺像二分,,可能做得少了或者就是。。。。 */ 題目大意: 一個集合裏有若幹點,要求你添加某些點後保證這個集合裏的任意兩點滿足以下三個條件中