TOJ 527

TOJ 527

題目

https://toj.tfcis.org/oj/pro/527/

給一個數 $N$

如果 $N$ 是 $9$ 的倍數就再加上 $9$

否則輸出一個比他的的數當中,是 $9$ 的倍數的最小值

想法

在不是 $9$ 的倍數的情況下,可以先藉由 $N % 9$ 取得 $N$ 與前一個 $9$ 的倍數的距離

用 $9 - (N % 9)$ 就可以獲得 $N$ 與下一個 $9$ 的倍數的距離了

Code

1
2
3
4
5
6
7
8
9
10
11
12
13
14
//By Koios1143
#include<iostream>
using namespace std;
int main(){
int n;
cin>>n;
if(n%9==0){
cout<<n+9<<"\n";
}
else{
cout<<n+(9-n%9)<<"\n";
}
return 0;
}

複雜度分析

總時間複雜度為 $O(1)$