排序是一種很頻繁的計算任務。乙個實際的例子是,當我們給某項競賽的優勝者按金銀銅牌排序的時候。在這個任務中可能的值只有三種1,2和3。我們用交換的方法把他排成公升序的。
寫乙個程式計算出,計算出的乙個包括1、2、3三種值的數字序列,排成公升序所需的最少交換次數。
輸入第1行為類別的數量n(1≤n≤1000)
輸入第2行到第n+1行,每行包括乙個數字(1或2或3)。
輸出包含一行,為排成公升序所需的最少交換次數。
樣例輸入
9221333
231
樣例輸出
4
#include #include #include using namespace std;
int n,i;
int a[1001],b[1001];
int x,y,z,sum=0;
int main()
sort(b,b+n);
for(i=0;iz ? y:z);
cout<
計蒜客 三值排序(貪心)
排序是一種很頻繁的計算任務。乙個實際的例子是,當我們給某項競賽的優勝者按金銀銅牌排序的時候。在這個任務中可能的值只有三種1,2和3。我們用交換的方法把他排成公升序的。寫乙個程式計算出,計算出的乙個包括1 2 3三種值的數字序列,排成公升序所需的最少交換次數。輸入第1行為類別的數量n 1 n 1000...
計蒜客 三值排序
三值排序 排序是一種很頻繁的計算任務。乙個實際的例子是,當我們給某項競賽的優勝者按金銀銅牌排序的時候。在這個任務中可能的值只有三種1,2和3。我們用交換的方法把他排成公升序的。寫乙個程式計算出,計算出的乙個包括1 2 3三種值的數字序列,排成公升序所需的最少交換次數。輸入第1行為類別的數量n 1 n...
計蒜客題目 三值排序
排序是一種很頻繁的計算任務。乙個實際的例子是,當我們給某項競賽的優勝者按金銀銅牌排序的時候。在這個任務中可能的值只有三種1,2和3。我們用交換的方法把他排成公升序的。寫乙個程式計算出,計算出的乙個包括1 2 3三種值的數字序列,排成公升序所需的最少交換次數。輸入第1行為類別的數量n 1 n 1000...