알고리즘 분류
- 사칙연산
- 나머지 연산
(A + B) % C는 ((A % C) + (B % C)) % C 와 같을까?
(A × B) % C는 ((A % C) × (B % C)) % C 와 같을까?
세 수 A, B, C가 주어졌을 때, 위의 네 가지 값을 구하는 프로그램을 작성하시오.
첫째 줄에 A, B, C가 순서대로 주어진다. (2 ≤ A, B, C ≤ 10000)
첫째 줄에 (A + B) % C,
둘째 줄에 ((A % C) + (B % C)) % C,
셋째 줄에 (A × B) % C,
넷째 줄에 ((A % C) × (B % C)) % C를 출력한다.
5 8 4
1
1
0
0
const readline = require('readline');
const rl = readline.createInterface({
input: process.stdin,
output: process.stdout
});
rl.on('line', function(line) {
input = line.split(' ');
let num1 = Number(input[0]);
let num2 = Number(input[1]);
let num3 = Number(input[2]);
console.log((num1 + num2) % num3);
console.log(((num1 % num3) + (num2 % num3)) % num3);
console.log((num1 * num2) % num3);
console.log(((num1 % num3) * (num2 % num3)) % num3);
rl.close();
}).on("close", function() {
process.exit();
});
코딩을 빙자한 수학 문제인듯 하다.
곱셈 혹은 나눗셈 연산을 할 때하는.. 뭐시기 있었는데 기억이 안난다.
(뭐라고 검색해야될지도 안 떠올라서 검색도 포기..)
추후에 알게되면 수정하도록 하고..
무튼 중요한 것은 나머지 연산이다.
나머지 연산은 일반적인 곱셈, 나눗셈과는 다르게
곱셈, 나눗셈과 같은 연산을 하고 나서
마지막으로 나머지 연산을 한번 더 해주어야 한다.