牛客練習賽70 重新排列

2022-09-09 00:30:24 字數 871 閱讀 7823

牛牛有個很喜歡的字串」puleyaknoi「。

牛牛有t個很長很長的字串,他很喜歡把字串中的子串(連續的某段)打亂,並且按照自己的喜好重新排列。

如果牛牛能把一段重新排列出他喜歡的字串,他就會把這個子串稱作:喜歡的子串。

牛牛是個懶人,他不喜歡對太長的子串進行重排,那樣他會覺著眼鏡很累。

你能幫他求出對於每個字串,最短的喜歡的子串的長度是多少嗎?

如果沒有,請輸出-1。

第一行乙個表示資料組數

接下來行每行乙個字串(保證字串只含小寫字母)

共t行每行乙個答案

輸入:

2

sxpuleyaaknoip

konijiwa

輸出:

11

-1

用尺取判斷和二分判斷均可,這裡使用二分判斷

二分出結果,然後暴力掃一遍看看此時的二分結果是否符合要求即可

#include#include#include#include#include#include#include#includeusing namespace std;

#define ll long long

const int n = 1e5 + 15;

char str[n];

bool check(int len, int k)

return false;

}int main()

int l = 0, r = len;

while (l < r)

printf("%d\n", l);

} return 0;

}

牛客練習賽70 重新排列

時間限制 c c 1秒,其他語言2秒 空間限制 c c 262144k,其他語言524288k 64bit io format lld 題目描述 牛牛有個很喜歡的字串 puleyaknoi 牛牛有t個很長很長的字串,他很喜歡把字串中的子串 連續的某段 打亂,並且按照自己的喜好重新排列。如果牛牛能把一...

牛客練習賽 70

二分答案,然後迴圈一邊即可。define io ios sync with stdio false cin.tie cout.tie 0 pragma gcc optimize 2 include include using namespace std const int n 100010 int ...

拼湊 牛客練習賽70

牛牛還是很喜歡字串 puleyaknoi 牛牛有t個超長超長的字串,不過這次他更懶了,他希望直接在字串中看見他喜歡的字串。如果乙個子串中含有乙個子串行是 puleyaknoi 那麼他就把這個子串稱作好的子串。牛牛是個懶人,他不喜歡看太長的子串,那樣他會覺著眼鏡很累。你能幫他求出對於每個字串,最短的好...