๊ฐœ์ธ๊ณต๋ถ€/Algorithm

[๋ฐฑ์ค€][Node.js] 1547๋ฒˆ : ๊ณต

๐Ÿ‡๋ฐ•๋ด‰๋ด‰๐Ÿ‡ 2021. 7. 8. 23:30

 

 

Algorithm

-  ๊ณต -

 


 

๋ฌธ์ œ

์„ธ์ค€์ด๋Š” ์ปต 3๊ฐœ๋ฅผ ํƒ์ž ์œ„์— ์ผ๋ ฌ๋กœ ์—Ž์–ด๋†“์•˜๋‹ค. ์ปต์˜ ๋ฒˆํ˜ธ๋Š” ๋งจ ์™ผ์ชฝ ์ปต๋ถ€ํ„ฐ ์ˆœ์„œ๋Œ€๋กœ 1๋ฒˆ, 2๋ฒˆ, 3๋ฒˆ์ด๊ณ , ์„ธ์ค€์ด๋Š” ์ด ์ปต์„ ์ด์šฉํ•ด์„œ ๊ฒŒ์ž„์„ ํ•˜๋ ค๊ณ  ํ•œ๋‹ค.

 

๋จผ์ € 1๋ฒˆ ์ปต์˜ ์•„๋ž˜์— ๊ณต์„ ํ•˜๋‚˜ ๋„ฃ๋Š”๋‹ค. ์„ธ์ค€์ด๋Š” ๋‘ ์ปต์„ ๊ณ ๋ฅธ ๋‹ค์Œ, ๊ทธ ์œ„์น˜๋ฅผ ๋งž๋ฐ”๊พธ๋ ค๊ณ  ํ•œ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด, ๊ณ ๋ฅธ ์ปต์ด 1๋ฒˆ๊ณผ 2๋ฒˆ์ด๋ผ๋ฉด, ์ปต์ด ์žˆ๋˜ ์œ„์น˜์— 2๋ฒˆ ์ปต์„ ์ด๋™์‹œํ‚ค๊ณ , ๋™์‹œ์— 2๋ฒˆ ์ปต์ด ์žˆ๋˜ ์œ„์น˜์— 1๋ฒˆ ์ปต์„ ์ด๋™์‹œ์ผœ์•ผ ํ•œ๋‹ค. ์ด๋•Œ ๊ณต์€ ์›€์ง์ด์ง€ ์•Š๊ธฐ ๋•Œ๋ฌธ์—, ๊ณต์˜ ์œ„์น˜๋Š” ๋งจ ์ฒ˜์Œ 1๋ฒˆ ์ปต์ด ์žˆ๋˜ ์œ„์น˜์™€ ๊ฐ™๋‹ค.

 

์„ธ์ค€์ด๋Š” ์ปต์˜ ์œ„์น˜๋ฅผ ์ด M๋ฒˆ ๋ฐ”๊ฟ€ ๊ฒƒ์ด๋ฉฐ, ์ปต์˜ ์œ„์น˜๋ฅผ ๋ฐ”๊พผ ๋ฐฉ๋ฒ•์ด ์ž…๋ ฅ์œผ๋กœ ์ฃผ์–ด์ง„๋‹ค. ์œ„์น˜๋ฅผ M๋ฒˆ ๋ฐ”๊พผ ์ดํ›„์— ๊ณต์ด ๋“ค์–ด์žˆ๋Š” ์ปต์˜ ๋ฒˆํ˜ธ๋ฅผ ๊ตฌํ•˜๋Š” ํ”„๋กœ๊ทธ๋žจ์„ ์ž‘์„ฑํ•˜์‹œ์˜ค.

 

์ž…์ถœ๋ ฅ ์˜ˆ์‹œ

 

๋ฌธ์ œ ํ’€๊ธฐ

const readline = require("readline");
const rl = readline.createInterface({
	input: process.stdin,
	output: process.stdout,
});
let input = [];
rl.on("line", function (line) {
	input.push(line.toString());
}).on("close", function () {
	input.shift();
	input = input.map((el) => el.split(" ").map((el) => Number(el)));
	let arr = [false, true, false, false];

	for (let i = 0; i < input.length; i++) {
		if (arr[input[i][0]] === true || arr[input[i][1]] === true) {
			arr[input[i][0]] = !arr[input[i][0]];
			arr[input[i][1]] = !arr[input[i][1]];
		}
	}
	console.log(arr.indexOf(true));
	process.exit();
});

 

 

 

๋ฐ˜์‘ํ˜•