問題一覧 >
通常問題
No.636 硬貨の枚数2
レベル :
/ 実行時間制限 : 1ケース 2.000秒 / メモリ制限
: 512 MB / 標準ジャッジ問題
タグ :
/
解いたユーザー数 49
作問者 :
しらっ亭
/ テスター :
はむこ
問題文最終更新日: 2018-01-19 00:31:47
問題文
YUKI国には、任意の非負整数 に対して、額面が 円と 円であるような硬貨が流通しています。
流通している硬貨を額面を小さい方からいくつか列挙すると、 です。
雪子さんは、お店で 円の品物を購入しようと思っています。
円の決済をするのに、YUKI国の硬貨で 円をお店に支払い、お釣りとしてYUKI国の硬貨で 円を受け取ります。
決済で硬貨を支払うときも、お釣りとして受け取るときも、枚数が最小となるように硬貨を選んでやり取りを行います。
雪子さんもお店も、全ての額面の硬貨を 枚持っているため、やり取りのときに硬貨が不足してしまうことはありません。
雪子さんは、やり取りする硬貨の枚数、つまり、"渡す硬貨の枚数と受け取る硬貨の枚数の和" を最小化したいです。
やり取りする硬貨の枚数の最小値を求めてください。
入力
N
は整数。
は 32bit 整数型や 64bit 整数型に収まらない可能性がある点に注意してください。
出力
答えを1行で出力してください。最後に改行してください。
サンプル
サンプル1
入力
87
出力
5
例えば、 円の決済に、 円を渡して 円を受け取ります。
額面 の 枚の硬貨を渡し、額面 の 枚を受け取ることで、やり取りする硬貨の枚数は 枚となり、これが最小です。
サンプル2
入力
1343414
出力
11
例えば、 円を渡し、 円を受け取ります。渡す硬貨 枚と受け取る硬貨 枚で合計 枚のやり取りとなり、これが最小です。
サンプル3
入力
175
出力
5
と支払ってお釣りをゼロにする方法と、 と支払ってお釣りを にする方法があり、いずれも 枚のやり取りとなり、これが最小です。
サンプル4
入力
5000000000000000
出力
1
枚で支払いが可能です。
提出するには、Twitter 、GitHub、 Googleもしくは右上の雲マークをクリックしてアカウントを作成してください。