程式設計題 01串排序

2021-07-03 12:36:33 字數 655 閱讀 3752

給定乙個01串(僅由『 0』或『1』組成的字串),現在想把這個數字串排序成「非遞減」有序序列,請問至少需要多少次交換(任意兩個位置交換)?

輸入描述:

輸入資料第一行是乙個正整數t(t<=100),表示有t組測試資料;

接下來的t行,每行給出01串。

資料保證——

50%的字串長度在[1,100 ]

95%的字串長度在[1,10000]

100%的字串長度在[1,1000000]

輸出描述:

對於每組測試資料,請輸出排成「非遞減有序序列」的最小交換次數。

每組輸出佔一行。

輸入例子:

3 01

10 110

輸出例子:

0 1

1使用快速排序的思想,使用兩個指標i和j,i從左往右掃瞄,j從右往左掃瞄。左邊遇到1,右邊遇到0的時候就要進行一次交換。

#include 

#include

using

namespace

std;

int func(string str)

}return cnt;

}int main()

return

0;}

網易程式設計題 交錯01串

交錯01串 時間限制 1秒 空間限制 32768k 如果乙個 01串任意兩個相鄰位置的字元都是不一樣的 我們就叫這個 01串為交錯 01串。例如 1 10101 0101010 都是交錯 01串。小易現在有乙個01串 s,小易想找出乙個最長的連續子串 並且這個子串是乙個交錯 01串。小易需要你幫幫忙...

程式設計題09 交錯01串(網易)

如果乙個01串任意兩個相鄰位置的字元都是不一樣的,我們就叫這個01串為交錯01串。例如 1 10101 0101010 都是交錯01串。小易現在有乙個01串s,小易想找出乙個最長的連續子串,並且這個子串是乙個交錯01串。小易需要你幫幫忙求出最長的這樣的子串的長度是多少。輸入包括字串s,s的長度len...

網易2018校招程式設計題 交錯01串 C

程式設計題 交錯01串 時間限制 1秒 空間限制 32768k 如果乙個01串任意兩個相鄰位置的字元都是不一樣的,我們就叫這個01串為交錯01串。例如 1 10101 0101010 都是交錯01串。小易現在有乙個01串s,小易想找出乙個最長的連續子串,並且這個子串是乙個交錯01串。小易需要你幫幫忙...