はまやんはまやんはまやん

hamayanhamayan's blog

Kagami Mochi [AtCoder Beginner Contest 085 B]

https://abc085.contest.atcoder.jp/tasks/abc085_b

解法

https://abc085.contest.atcoder.jp/submissions/1952140

今回は順番を入れ替えてもOKなので、貪欲に作っていくことを考える。
貪欲に作るには一番下は最大の餅にすればいい。
下から二番目は二番目に大きい餅にすればいい。
注意すべきなのは同じ大きさの餅は置けないということ。
そのため、貪欲においていくと餅の大きさの種類数だけおけることになる。
 
N個の数の種類数を求めるには、setにいれて個数を数えればいい。

int N, D[101];
//---------------------------------------------------------------------------------------------------
void _main() {
    cin >> N;
    rep(i, 0, N) cin >> D[i];
 
    set<int> se;
    rep(i, 0, N) se.insert(D[i]);
    int ans = se.size();
    cout << ans << endl;
}