これはちょっと難しい。
問題概要
円の買い物をした。1000 円札のみを用いて支払うとき、お釣りはいくらになるか?
解法
まず、 が 1000 で割り切れるときは、お釣りはない。つまり、0 円である。
が 1000 で割り切れないときが少し難しい。たとえば、 のとき、これを 1000 で割ると
あまり
となる。この場合、1000 円冊は 枚払うことになる。このとき、おつりは
円
となる。より一般にまとめると、
- が で割り切れるとき、0 円
- 割り切れないとき、あまりは
N % 1000
円となるから、お釣りは1000 - N % 1000
となる
#include <bits/stdc++.h> using namespace std; int main() { int N; cin >> N; if (N % 1000 == 0) cout << 0 << endl; else cout << 1000 - N % 1000 << endl; }