κ°œμΈκ³΅λΆ€/Algorithm

[λ°±μ€€][Node.js] 6679번 : μ‹±κΈ°ν•œ λ„€μžλ¦¬ 숫자

πŸ‡λ°•λ΄‰λ΄‰πŸ‡ 2021. 12. 6. 21:59

 

 

Algorithm

-  μ‹±κΈ°ν•œ λ„€μžλ¦¬ 숫자 -

 


 

문제

μ‹±κΈ°ν•œ λ„€μžλ¦¬ μˆ«μžλž€, [1000,9999]인 10μ§„μˆ˜ μˆ«μžμ€‘μ—μ„œ,  λ‹€μŒμ˜ 쑰건을 λ§Œμ‘±ν•˜λŠ” 숫자λ₯Ό λ§ν•œλ‹€.

  • 숫자λ₯Ό 10μ§„μˆ˜, 12μ§„μˆ˜, 16μ§„μˆ˜λ‘œ λ‚˜νƒ€λ‚Έ λ‹€μŒ, 각각의 μˆ«μžμ— λŒ€ν•΄, 각 숫자의 μžλ¦¬μˆ˜λ₯Ό λ”ν–ˆμ„ λ•Œ, μ„Έ 값이 λͺ¨λ‘ κ°™μ•„μ•Ό ν•œλ‹€.

μ—¬λŸ¬λΆ„μ€ μ‹±κΈ°ν•œ λ„€μžλ¦¬ 숫자λ₯Ό λͺ¨λ‘ 좜λ ₯ν•΄μ•Ό ν•œλ‹€.

 

μž…μΆœλ ₯ μ˜ˆμ‹œ

 

문제 ν’€κΈ°

const readline = require("readline");
const rl = readline.createInterface({
	input: process.stdin,
	output: process.stdout,
});
rl.on("line", function () {}).on("close", function () {
	for (let i = 1000; i <= 9999; i++) {
		let ten = 0;
		let twelve = 0;
		let sixteen = 0;
		let number = i;

		while (number !== 0) {
			ten += number % 10;
			number = Math.floor(number / 10);
		}
		number = i;
		while (number !== 0) {
			twelve += number % 12;
			number = Math.floor(number / 12);
		}
		number = i;
		while (number !== 0) {
			sixteen += number % 16;
			number = Math.floor(number / 16);
		}
		if (ten === twelve && twelve === sixteen) console.log(i);
	}
	process.exit();
});

 

 

 

λ°˜μ‘ν˜•