
2890๋ฒ: ์นด์ฝ
์ฒซ์งธ ์ค์ R๊ณผ C๊ฐ ์ฃผ์ด์ง๋ค. ๋ค์ R๊ฐ ์ค์๋ '.', 'S', 'F', '1'~'9'๋ก ์ด๋ฃจ์ด์ง ์์ฑ ์ง๋๊ฐ ์ฃผ์ด์ง๋ค. ํ ์ค์๋ ์ต๋ ํ ๊ฐ์ ์นด์ฝ๋ง ์๊ณ , ์์ฑ ์ฌ์ง์ ์๋ ์นด์ฝ์ ํญ์ 9๊ฐ์ด๋ค. (10 โค R, C โค 50)
www.acmicpc.net
๋ฌธ์
์๊ทผ์ด๋ ์นด์ฝ ๋ํ๋ฅผ ๊ฐ์ตํ๋ค. ๋ํ๋ ์ ์ธ๊ณ์ ์์ค๊ณ๋๊ณ , ์์ฑ์ด ๊ฒฝ๊ธฐ์ฅ ์ ์ฒด๋ฅผ ์ดฌ์ํ๊ณ ์๋ค. ์๊ทผ์ด๋ ์์ฑ ์ฌ์ง์ ๋ฐํ์ผ๋ก ์ค์๊ฐ ์์๋ฅผ ๊ณ์ฐํ๋ ํ๋ก๊ทธ๋จ์ ๋ง๋ค๋ ค๊ณ ํ๋ค.
์์ฑ ์ฌ์ง์ Rํ C์ด์ด๋ค. ๋ชจ๋ ์ค์ ์ฒซ ๋ฒ์งธ ๊ธ์๋ 'S'์ด๊ณ ์ถ๋ฐ์ ์ ์๋ฏธํ๋ค. ๋, ๋ง์ง๋ง ๊ธ์๋ 'F'์ด๊ณ ์ด๊ฒ์ ๊ฒฐ์น์ ์ ์๋ฏธํ๋ค. ๋ํ์ ์ฐธ๊ฐํ ํ์ ์ด 9ํ์ด๊ณ , ๊ฐ ํ์ 1๋ถํฐ 9๊น์ง ๋ฒํธ๊ฐ ๋งค๊ฒจ์ ธ ์๋ค. ์นด์ฝ์ ํญ์ ์ด์ ๋ํด ์ฐ์ํ๋ ์ธ ์นธ์ ์ฐจ์งํ๋ฉฐ, ์นด์ฝ ๋ฒํธ๋ก ํ์ํ๋ค. ๋ง์ง๋ง์ผ๋ก ๋ฌผ์ '.'๋ก ๋ํ๋ ์๋ค.
ํ์ ์์๋ ๊ฒฐ์น์ ์ผ๋ก๋ถํฐ ๋จ์ด์ง ๊ฑฐ๋ฆฌ๋ก ์ธก์ ํ๋ค. ๊ฐ๊น์ธ์๋ก ์์๊ฐ ๋๋ค. ๋ง์ฝ, ๋ ํ์ด ๊ฒฐ์น์ ๊ณผ ๋จ์ด์ง ๊ฑฐ๋ฆฌ๊ฐ ๊ฐ๋ค๋ฉด, ๊ฐ์ ๋ฑ์์ด๋ค.
์ ๋ ฅ
์ฒซ์งธ ์ค์ R๊ณผ C๊ฐ ์ฃผ์ด์ง๋ค. ๋ค์ R๊ฐ ์ค์๋ '.', 'S', 'F', '1'~'9'๋ก ์ด๋ฃจ์ด์ง ์์ฑ ์ง๋๊ฐ ์ฃผ์ด์ง๋ค. ํ ์ค์๋ ์ต๋ ํ ๊ฐ์ ์นด์ฝ๋ง ์๊ณ , ์์ฑ ์ฌ์ง์ ์๋ ์นด์ฝ์ ํญ์ 9๊ฐ์ด๋ค. (10 โค R, C โค 50)
์ถ๋ ฅ
์ถ๋ ฅ์ ์ด 9์ค์ ํด์ผ ํ๋ค. i๋ฒ์งธ ์ค์๋ i๋ฒ ํ์ ๋ฑ์๋ฅผ ์ถ๋ ฅํ๋ค. (i=1~9)

ํ์ด๊ณผ์
์ญ์์ผ๋ก ๋ฐฐ์ด์ ๋๋ฉฐ ์กฐ๊ฑด์์ด ํ๋นํ๊ฒฝ์ฐ์ ์์๋ฅผ ์์๋ฐฐ์ด์ ์ ๋ ฅ
code
function kayak() {
const [n, ...arr] = require('fs')
.readFileSync('/dev/stdin')
.toString()
.trim()
.split('\\n');
let count = 0;
let number = [];
let flag = false;
// r ์ธ๋ก, c ๊ฐ๋ก
const [c, r] = n.split(' ').map(Number);
for (let i = r - 1; i >= 0; i--) {
flag = false;
for (let j = 0; j < c; j++) {
if ('1' <= arr[j][i] && arr[j][i] <= '9')
if (arr[j][i + 1] === '.' || arr[j][i + 1] === 'F') {
if (!flag) {
count++;
flag = true;
}
number[arr[j][i]] = count;
}
}
}
// console.log(number);
for (let i = 1; i < 10; i++) {
console.log(number[i]);
}
};
kayak();


ํ๊ธฐ
๋ฌธ์ ๋ฅผ ๋๋ฐ๋ก ์ฝ์ด์ผ๊ฒ ๋ค ๋ฌธ์ ๋ฅผ ์๋ชป์ฝ์ด์ ๋๋ ์ฆ์ด ๋ฐ์.
'Algorithm > ๋ฌธ์ ํ์ด' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[๋ฐฑ์ค] 2508๋ฒ - ์ฌํ ๋ฐ์ฌ ๊ณ ์ฐฝ์ (C++) (0) | 2023.07.28 |
---|---|
[๋ฐฑ์ค] 28235๋ฒ - ์ฝ๋๋ง์คํฐ 2023 (JS) (0) | 2023.07.27 |
[๋ฐฑ์ค] 27959๋ฒ - ์ด์ฝ๋ฐ (JS) (0) | 2023.07.24 |
[๋ฐฑ์ค] 9316๋ฒ - Hello Judge (JS) (0) | 2023.07.22 |
[๋ฐฑ์ค] 27889๋ฒ - ํน๋ณํ ํ๊ต ์ด๋ฆ (JS) (0) | 2023.07.21 |

2890๋ฒ: ์นด์ฝ
์ฒซ์งธ ์ค์ R๊ณผ C๊ฐ ์ฃผ์ด์ง๋ค. ๋ค์ R๊ฐ ์ค์๋ '.', 'S', 'F', '1'~'9'๋ก ์ด๋ฃจ์ด์ง ์์ฑ ์ง๋๊ฐ ์ฃผ์ด์ง๋ค. ํ ์ค์๋ ์ต๋ ํ ๊ฐ์ ์นด์ฝ๋ง ์๊ณ , ์์ฑ ์ฌ์ง์ ์๋ ์นด์ฝ์ ํญ์ 9๊ฐ์ด๋ค. (10 โค R, C โค 50)
www.acmicpc.net
๋ฌธ์
์๊ทผ์ด๋ ์นด์ฝ ๋ํ๋ฅผ ๊ฐ์ตํ๋ค. ๋ํ๋ ์ ์ธ๊ณ์ ์์ค๊ณ๋๊ณ , ์์ฑ์ด ๊ฒฝ๊ธฐ์ฅ ์ ์ฒด๋ฅผ ์ดฌ์ํ๊ณ ์๋ค. ์๊ทผ์ด๋ ์์ฑ ์ฌ์ง์ ๋ฐํ์ผ๋ก ์ค์๊ฐ ์์๋ฅผ ๊ณ์ฐํ๋ ํ๋ก๊ทธ๋จ์ ๋ง๋ค๋ ค๊ณ ํ๋ค.
์์ฑ ์ฌ์ง์ Rํ C์ด์ด๋ค. ๋ชจ๋ ์ค์ ์ฒซ ๋ฒ์งธ ๊ธ์๋ 'S'์ด๊ณ ์ถ๋ฐ์ ์ ์๋ฏธํ๋ค. ๋, ๋ง์ง๋ง ๊ธ์๋ 'F'์ด๊ณ ์ด๊ฒ์ ๊ฒฐ์น์ ์ ์๋ฏธํ๋ค. ๋ํ์ ์ฐธ๊ฐํ ํ์ ์ด 9ํ์ด๊ณ , ๊ฐ ํ์ 1๋ถํฐ 9๊น์ง ๋ฒํธ๊ฐ ๋งค๊ฒจ์ ธ ์๋ค. ์นด์ฝ์ ํญ์ ์ด์ ๋ํด ์ฐ์ํ๋ ์ธ ์นธ์ ์ฐจ์งํ๋ฉฐ, ์นด์ฝ ๋ฒํธ๋ก ํ์ํ๋ค. ๋ง์ง๋ง์ผ๋ก ๋ฌผ์ '.'๋ก ๋ํ๋ ์๋ค.
ํ์ ์์๋ ๊ฒฐ์น์ ์ผ๋ก๋ถํฐ ๋จ์ด์ง ๊ฑฐ๋ฆฌ๋ก ์ธก์ ํ๋ค. ๊ฐ๊น์ธ์๋ก ์์๊ฐ ๋๋ค. ๋ง์ฝ, ๋ ํ์ด ๊ฒฐ์น์ ๊ณผ ๋จ์ด์ง ๊ฑฐ๋ฆฌ๊ฐ ๊ฐ๋ค๋ฉด, ๊ฐ์ ๋ฑ์์ด๋ค.
์ ๋ ฅ
์ฒซ์งธ ์ค์ R๊ณผ C๊ฐ ์ฃผ์ด์ง๋ค. ๋ค์ R๊ฐ ์ค์๋ '.', 'S', 'F', '1'~'9'๋ก ์ด๋ฃจ์ด์ง ์์ฑ ์ง๋๊ฐ ์ฃผ์ด์ง๋ค. ํ ์ค์๋ ์ต๋ ํ ๊ฐ์ ์นด์ฝ๋ง ์๊ณ , ์์ฑ ์ฌ์ง์ ์๋ ์นด์ฝ์ ํญ์ 9๊ฐ์ด๋ค. (10 โค R, C โค 50)
์ถ๋ ฅ
์ถ๋ ฅ์ ์ด 9์ค์ ํด์ผ ํ๋ค. i๋ฒ์งธ ์ค์๋ i๋ฒ ํ์ ๋ฑ์๋ฅผ ์ถ๋ ฅํ๋ค. (i=1~9)

ํ์ด๊ณผ์
์ญ์์ผ๋ก ๋ฐฐ์ด์ ๋๋ฉฐ ์กฐ๊ฑด์์ด ํ๋นํ๊ฒฝ์ฐ์ ์์๋ฅผ ์์๋ฐฐ์ด์ ์ ๋ ฅ
code
function kayak() {
const [n, ...arr] = require('fs')
.readFileSync('/dev/stdin')
.toString()
.trim()
.split('\\n');
let count = 0;
let number = [];
let flag = false;
// r ์ธ๋ก, c ๊ฐ๋ก
const [c, r] = n.split(' ').map(Number);
for (let i = r - 1; i >= 0; i--) {
flag = false;
for (let j = 0; j < c; j++) {
if ('1' <= arr[j][i] && arr[j][i] <= '9')
if (arr[j][i + 1] === '.' || arr[j][i + 1] === 'F') {
if (!flag) {
count++;
flag = true;
}
number[arr[j][i]] = count;
}
}
}
// console.log(number);
for (let i = 1; i < 10; i++) {
console.log(number[i]);
}
};
kayak();


ํ๊ธฐ
๋ฌธ์ ๋ฅผ ๋๋ฐ๋ก ์ฝ์ด์ผ๊ฒ ๋ค ๋ฌธ์ ๋ฅผ ์๋ชป์ฝ์ด์ ๋๋ ์ฆ์ด ๋ฐ์.
'Algorithm > ๋ฌธ์ ํ์ด' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[๋ฐฑ์ค] 2508๋ฒ - ์ฌํ ๋ฐ์ฌ ๊ณ ์ฐฝ์ (C++) (0) | 2023.07.28 |
---|---|
[๋ฐฑ์ค] 28235๋ฒ - ์ฝ๋๋ง์คํฐ 2023 (JS) (0) | 2023.07.27 |
[๋ฐฑ์ค] 27959๋ฒ - ์ด์ฝ๋ฐ (JS) (0) | 2023.07.24 |
[๋ฐฑ์ค] 9316๋ฒ - Hello Judge (JS) (0) | 2023.07.22 |
[๋ฐฑ์ค] 27889๋ฒ - ํน๋ณํ ํ๊ต ์ด๋ฆ (JS) (0) | 2023.07.21 |