USACO2 1 3 三值排序

2021-07-15 06:44:37 字數 869 閱讀 9995

【問題描述】

排序是一種很頻繁的計算任務。現在考慮最多只有三值的排序問題。乙個實際的例子是,當我們給某項競賽的優勝者按金銀銅牌排序的時候。在這個任務中可能的值只有三種1,2和3。我們用交換的方法把他排成公升序的。

寫乙個程式計算出,給定的乙個1,2,3組成的數字序列,排成公升序所需的最少交換次數。

【輸入格式】

第 1 行:獎牌個數 n。

第 2 行到第 n+1 行: 每行乙個數字,表示獎牌。共 n 行。(1..3)

【輸出格式】

共一行,乙個數字。表示排成公升序所需的最少交換次數。

【輸入樣例】

9 2

2 1

3 3

3 2 3 1

【輸出樣例】

【資料範圍】

1 <= n <= 1000

這道題就是一道標準的排序題,但要注意模擬的方式。

詳見**標註:

#include

#include

#include

#include

#include

#include

using

namespace

std;

const

int maxn=1005;

const

int inf=200000000;

int a[maxn],n,d[maxn],c[maxn];

void init()

void work1()

swap(a[i],a[t]);

k++;

}printf("%d",k);

}int main()

USACO 2 1 3 三值的排序

排序是一種很頻繁的計算任務。現在考慮最多只有三值的排序問題。乙個實際的例子是,當我們給某項競賽的優勝者按金銀銅牌排序的時候。在這個任務中可能的值只有三種1,2和3。我們用交換的方法把他排成公升序的。寫乙個程式計算出,給定的乙個1,2,3組成的數字序列,排成公升序所需的最少交換次數。input for...

USACO月賽題解 第三講 排序

彙總見 這一部分的題目也很經典 第10題 重排乾草 restack 這種題要麼0分要麼滿分,和 訓練指南 的第一章例3幾乎一樣,通過代數分析將題目轉化 最後變成求中位數的題目,o n 還是o nlogn 隨意 bzoj裡出現了兩道和這題幾乎一樣的題目 錯了兩個點 修改資料型別 還是錯這兩個點 發現輸...

4 2三值排序 貪心

題目 排序是一種很頻繁的計算任務。乙個實際的例子是,當我們給某項競賽的優勝者按金銀銅牌排序的時候。在這個任務中可能的值只有三種1,2和3。我們用交換的方法把他排成公升序的。寫乙個程式計算出,計算出的乙個包括1 2 3三種值的數字序列,排成公升序所需的最少交換次數。輸入第1行為類別的數量n 1 n 1...