けんちょんの競プロ精進記録

競プロの精進記録や小ネタを書いていきます

価格に関する問題

鉄則本 A53 - Priority Queue (4Q, ★2)

優先度付きキューを人生で初めて試すのにいい問題。 問題へのリンク 問題概要 以下の 3 種類のクエリ ( 個) を高速に処理するプログラムを実装せよ。販売システムを模している。 クエリタイプ 1:価格が 円の商品が追加される クエリタイプ 2:今ある商品の…

JOI 予選 2015 A - 水道料金 (AOJ 0608) (8Q, 難易度 1)

価格系の問題! 問題へのリンク 問題概要 水道を リットル使用する。X 社と Y 社の料金体系は次のようになっている。 X 社:1 リットルあたり 円かかる Y 社:基本料金は 円であり、使用料が リットルを超えると 1 リットル超えるごとに 円かかる どちらを選…

JOI 予選 2010 A - レシート (AOJ 0543) (8Q, 難易度 1)

for 文を使わなくても解けるけど、使えると楽! 問題へのリンク 問題概要 10 冊の本を買った。その総額と、そのうちの 9 冊の価格が分かっている。残り 1 冊の本の価格を求めよ。 考えたこと まず総額の入力データを読み込みましょう。 そのあと、9 個の整数…

JOI 予選 2008 A - おつり (AOJ 0521) (5Q, 難易度 1)

今や超有名な Greedy 問題「コインの枚数最小化問題」 問題へのリンク 問題概要 JOI 雑貨店には硬貨は 500 円、100 円、50 円、10 円、5 円、1 円の硬貨が十分な枚数ある。 円の買い物をして 1000 円を支払った太郎くんに、硬貨の枚数が最小となるようにお釣…

AtCoder ABC 362 A - Buy a Pen (8Q, 灰色, 100 点)

if 文や、関数 min() を扱う練習! 問題へのリンク 問題概要 お店では "Red" のペンが一本 円、"Green" のペンが一本 円、"Blue" のペンが一本 円で売られている。 高橋君は色 ("Red", "Green", "Blue" のいずれか) が嫌いである。色 以外のペンの価格の最小…

JOI 一次予選 2022 (第 3 回) B - アイスクリーム (7Q, 難易度 2)

整数の切り上げの問題。意外と正確に解くのは大変かもしれない。 問題へのリンク 問題概要 ベースとなるアイスクリームの金額は 250 円で、高さは cm である。追加のアイスクリームは 1 個につき 100 円で、1 個追加するごとにアイスクリームタワーの高さが …

AtCoder ABC 233 A - 10yen Stamp (8Q, 灰色, 100 点)

切り上げ処理の練習! 問題へのリンク 問題概要 円ある。10 円増やすことを繰り返して 円以上になるようにしたい。 10 円増やす操作を最小で何回やればよいかを求めよ。 解法 まず、 のときは、もともと 10 円を増やす必要はないので 0 回になる。 の場合は…

AtCoder ABC 265 A - Apple (7Q, 灰色, 100 点)

ちょっと頭を使う系の問題。この時期の ABC-A にはこういうものが多かったね。 問題へのリンク 問題概要 りんごをちょうど 個買いたい 円払って 個買う 円払って 個買う のいずれかによって、ちょうど 個買うための最小コストを求めよ。 解法 以下のいずれか…

AtCoder ABC 210 A - Cabbages (8Q, 灰色, 100 点)

基本情報などでもよく問われる構造の問題! 問題へのリンク 問題概要 キャベツ 1 個を 円で買える。ただし、 個以上買う場合は 1 個 円で買える ()。 キャベツを 個買うときの価格を求めよ。 解法 である場合 最初の 個の分: 円 残りの 個の分: 円 である…

AtCoder ABC 206 A - Maxi-Buying (9Q, 灰色, 100 点)

出力がややこしい...... 問題へのリンク 問題概要 税抜価格が 円の品物に対して、消費税 8% を乗せた税込価格と 206 円との大小比較をせよ。 (出力形式はリンク先から) 解法 税込価格は (int)(1.08 * N) で求めることができる。 #include <bits/stdc++.h> using namespace s</bits/stdc++.h>…

AtCoder ABC 173 A - Payment (8Q, 灰色, 100 点)

これはちょっと難しい。 問題へのリンク 問題概要 円の買い物をした。1000 円札のみを用いて支払うとき、お釣りはいくらになるか? 解法 まず、 が 1000 で割り切れるときは、お釣りはない。つまり、0 円である。 が 1000 で割り切れないときが少し難しい。…

AtCoder ABC 150 A - 500 Yen Coins (9Q, 灰色, 100 点)

if 文の練習。 問題へのリンク 問題概要 円玉が 枚ある。 総額が 円以上ならば "Yes" を出力し、そうでなければ "No" を出力せよ。 解法 総額は 500 * K と表せるので、これが X 以上であるかどうかを判定すればよい。 #include <bits/stdc++.h> using namespace std; int m</bits/stdc++.h>…

AtCoder ABC 133 A - T or T (9Q, 灰色, 100 点)

久しぶりの易しい問題! 問題へのリンク 問題概要 電車を使うと 1 人あたり 円かかります。 タクシーを使うと 人で 円かかります。 人で移動する最小料金はいくらか。 解法 A * N B のうちの小さい方を答えれば OK。関数 min() が使える。 #include <bits/stdc++.h> using n</bits/stdc++.h>…

AtCoder ABC 127 A - Ferris Wheel (灰色, 100 点)

if 文を上手に使おう! 問題へのリンク 問題概要 ある観覧車の利用料金は年齢に応じて次のとおりである。 13 歳以上は 円かかる。 6 歳以上 12 歳以下は 円の半額がかかる。( は偶数) 5 歳以下は無料 歳の高橋君が観覧車に乗るときの利用料金を求めよ。 解法…

AtCoder ABC 113 A - Discount Fare (灰色, 100 点)

意外と問題文が読みにくい気もする。 問題へのリンク 問題概要 電車とバスを乗り継いで目的地にいきます。電車の運賃は 円、バスの運賃は 円でした。 ただし、バスの運賃が半額になる特別券を持っていたので使用しました。合計料金はいくらだったでしょうか…

AtCoder ABC 332 A - Online Shopping (8Q, 灰色, 100 点)

for 文と if 文の練習! 問題へのリンク 問題概要 種類のものを買う。 種類目のものは価格が 円であり、それを 個買う。 合計金額が 円未満ならば、さらに送料が 円加算される。総支払額を求めよ。 解法 まずは for 文を用いて、 の合計を求めよう。その値が…

AtCoder ABC 092 A - Traveling Budget (灰色, 100 点)

いい感じの問題! 問題へのリンク 問題概要 電車とバスを乗り継いで目的地へ行く。 電車は、通常切符で 円、乗り放題切符で 円かかる バスは、通常切符で 円、乗り放題切符で 円かかる 最も安く行く方法で何円かかるか。 解法 答えは min(A, B) + min(C, D) …

AtCoder ABC 091 A - Two Coins (9Q, 灰色, 100 点)

硬貨の問題! 問題へのリンク 問題概要 あなたは 円硬貨を 1 枚と、 円硬貨を 1 枚を持っている。 円の品物を購入できるかを判定せよ (お釣りは出ても良い)。 解法 所持金は 円であるから、 がそれ以下であれば OK。 #include <bits/stdc++.h> using namespace std; int mai</bits/stdc++.h>…

AtCoder ABC 088 A - Infinite Coins (灰色, 100 点)

少し気づきにくいかもしれない。 問題へのリンク 問題概要 あなたは、 円硬貨を 枚と、 円硬貨を無限枚持っている。 これらで 円をちょうど支払うことができるかどうかを判定せよ。 解法 一瞬戸惑う問題だと思う。現実の支払いの場面を思い浮かべてみるとわ…

AtCoder ABC 087 A - Buying Sweets (9Q, 灰色, 100 点)

これは簡単! 問題へのリンク 問題概要 円持っている状態から、 円の品物を買い、そのあと 円の品物をできるだけ買いました。 手元に残っている金額は? 解法 まず 円の品物を買ったあと、手元には 円残っている。 そのあと、 円の品物をできるだけ買ったと…

AtCoder ABC 080 A - Parking (9Q, 灰色, 100 点)

これは簡単だけど、頭がごちゃごちゃにならないようにしよう! 問題へのリンク 問題概要 ある駐車場では 2 パターンが選べる 時間駐車したときに、 円かかる 駐車時間にかかわらず、 円かかる 時間駐車したときの料金の最小値を求めよ。 解法 2 パターンの駐…

AtCoder ABC 055 A - Restaurant (8Q, 灰色, 100 点)

算数力の地力としての、四則演算を操る技能が問われる問題 問題へのリンク 問題概要 個買う。 個買うごとに 800 円支払う 個買うごとに 200 円もらえる 支払った金額 - もらった金額を答えよ。 解法 支払った金額は 800 * N もらった金額は 200 * (N / 15) …

AtCoder ABC 044 A - 高橋君とホテルイージー (8Q, 灰色, 100 点)

ちょっと数学的素養が必要な問題 問題へのリンク 問題概要 あるホテルの宿泊代は、 最初の 泊は、1 泊 円 それ以降は、1 泊 円 である。 泊したときの宿泊代を求めよ。 コード if 文を使おう。 泊以内の場合、つまり N <= K の場合は、X * N 円となる。 泊を…

AtCoder ABC 310 A - Order Something Else (7Q, 灰色, 100 点)

問題の入力変数が多いので、読み解くのが大変かもしれないですね。 問題へのリンク 問題概要 AtCoder ドリンクは定価である 円を払えば飲むことができます。 また、割引券を持っており、それを使うと AtCoder ドリンクを定価より安い価格である 円で飲むこと…

AtCoder ABC 246 C - Coupon (灰色, 300 点)

ソートが必要になるところが少し難しいかもしれない。 問題へのリンク 問題概要 個の商品があって、それぞれ 円である。 またクーポンが 枚あって、1 枚のクーポンを使って次のことができる。 商品を 1 つ選ぶ その商品の価格を 円減少させる ただしもとの価…

JOI 本選 2011 B - 古本屋 (AOJ 0561, 難易度 6)

こういうのは DP! ジャッジページ AOJ の問題文 問題概要 冊の古本があって、 番目の本のベース価格は 円である。またこれらの本は 10 種類のジャンルに分かれており、 番目の本のジャンルは で与えられる。 これらの本から 冊を古本屋で売りたい。ただし同…

JOI 春合宿 2008 day2-1 Nile.Com (難易度 6)

いかにも ABC-E にありあそうな DP!! ジャッジへのリンク 問題文へのリンク これとか似てる atcoder.jp 問題概要 個の店がある。 日間にわたって、いずれか 1 つの店で買い物をする。 日目に 番目の店で買い物をしたときの値段は で与えられる (10 の倍数)…

JOI 本選 2014 B - IOI饅頭 (AOJ 0599, 難易度 6)

まさにナップサック問題!!! 問題へのリンク 問題概要 個の饅頭がある。それぞれ 円で売り出そうとしている (全部売るとは限らない)。 饅頭を得るための箱をいくつか購入することにした。箱は 種類あって、 番目の箱は 饅頭を 個まで詰められる 仕入れるの…

JOI 本選 2016 A - オレンジの出荷 (AOJ 0625, 難易度 6)

区間を分割していくタイプの DP。とても教育的な典型問題という感じですね。 問題へのリンク editorial 類題は超多数!!! drken1215.hatenablog.com 問題概要 正の整数 と、 個の正の整数 が一列に並んでいる。これを左から順に何個かのグループに分けてい…

AtCoder ABC 164 E - Two Currencies (青色, 500 点)

これ、頂点を倍加してダイクストラする系。 問題へのリンク 問題概要 頂点 辺の連結な無向グラフが与えられる。各辺 には 通行に要する料金 円 (所持金が 以上でなければ通行できない) 通行に要する所要時間 秒 という属性がある。また、各頂点 では所持金を…