乙個長度為n
nn的序列。可以選擇一段區間旋轉,求使得∑i=
1n[a
i==i
]\sum_^n[a_i==i]
∑i=1n
[ai
==i]
最大。現在序列中每隔乙個插入乙個#
\##號(偽插入)
用g ig_
gi表示以中點為i
ii的序列翻轉後能夠對應的數字。
然後列舉中心點,然後從短到長列舉翻轉可以對應的陣列,然後統計答案。
#include
#include
#include
#include
using
namespace std;
const
int n=
500010
;int n,a[n]
,s[n]
,ans;
vector<
int> g[n]
;int
main()
for(
int i=
1;i<=
2*n;i++)if
(!g[i]
.empty()
)}printf
("%d"
,ans)
;}
HDU 6288 缺失的資料範圍
題目 思路簡單,wa題無數遍,哭了 對了個拍,發現log2不可以用log來求,因為不能保證精度,預處理了2的倍數用二分找了。include include include include include include include include include include define g...
hdu6288(取對數 二分)
缺失的資料範圍 著名出題人小q出過非常多的題目,在這個漫長的過程中他發現,確定題目的資料範圍是非常痛苦的一件事。每當思考完一道題目的時間效率,小q就需要結合時限以及評測機配置來設定合理的資料範圍。因為確定資料範圍是一件痛苦的事,小q出了非常多的題目之後,都沒有它們設定資料範圍。對於一道題目,小q會告...
JZOJ 交換 模擬
給出字串s和字串t,現在你要把s的某乙個字元和t的某乙個字元交換,使得交換之後的s至少要有三個連續相同的字元,交換之後的t也要有三個連續相同的字元。問有多少種不同的交換方式。第一行,乙個字串s。s只含有 r g b 三種字元,長度不超過50,不小於3。而且s任意兩個相鄰的字元都不相同。第二行,乙個字...