-
[๋ฐฑ์ค(BOJ)] 10809๋ฒ ์ํ๋ฒณ ์ฐพ๊ธฐ, C์ธ์ด ํ์ดPS(Problem Solving)/C 2020. 7. 5. 17:06๋ฐ์ํ
<์ํ๋ฒณ ์ฐพ๊ธฐ>, 10809๋ฒ
๋ฌธ์
์ํ๋ฒณ ์๋ฌธ์๋ก๋ง ์ด๋ฃจ์ด์ง ๋จ์ด S๊ฐ ์ฃผ์ด์ง๋ค. ๊ฐ๊ฐ์ ์ํ๋ฒณ์ ๋ํด์, ๋จ์ด์ ํฌํจ๋์ด ์๋ ๊ฒฝ์ฐ์๋ ์ฒ์ ๋ฑ์ฅํ๋ ์์น๋ฅผ, ํฌํจ๋์ด ์์ง ์์ ๊ฒฝ์ฐ์๋ -1์ ์ถ๋ ฅํ๋ ํ๋ก๊ทธ๋จ์ ์์ฑํ์์ค.
์ ๋ ฅ
์ฒซ์งธ ์ค์ ๋จ์ด S๊ฐ ์ฃผ์ด์ง๋ค. ๋จ์ด์ ๊ธธ์ด๋ 100์ ๋์ง ์์ผ๋ฉฐ, ์ํ๋ฒณ ์๋ฌธ์๋ก๋ง ์ด๋ฃจ์ด์ ธ ์๋ค.
์ถ๋ ฅ
๊ฐ๊ฐ์ ์ํ๋ฒณ์ ๋ํด์, a๊ฐ ์ฒ์ ๋ฑ์ฅํ๋ ์์น, b๊ฐ ์ฒ์ ๋ฑ์ฅํ๋ ์์น, ... z๊ฐ ์ฒ์ ๋ฑ์ฅํ๋ ์์น๋ฅผ ๊ณต๋ฐฑ์ผ๋ก ๊ตฌ๋ถํด์ ์ถ๋ ฅํ๋ค.
๋ง์ฝ, ์ด๋ค ์ํ๋ฒณ์ด ๋จ์ด์ ํฌํจ๋์ด ์์ง ์๋ค๋ฉด -1์ ์ถ๋ ฅํ๋ค. ๋จ์ด์ ์ฒซ ๋ฒ์งธ ๊ธ์๋ 0๋ฒ์งธ ์์น์ด๊ณ , ๋ ๋ฒ์งธ ๊ธ์๋ 1๋ฒ์งธ ์์น์ด๋ค.
์์ ์ ๋ ฅ 1
baekjoon
์์ ์ถ๋ ฅ 1
1 0 -1 -1 2 -1 -1 -1 -1 4 3 -1 -1 7 5 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1
ํ์ด
์ด ๋ฌธ์ ๋ ์๋ฌธ์ ์ํ๋ฒณ์ผ๋ก๋ง ์ด๋ฃจ์ด์ง ๋ฌธ์์ด์ ์ ๋ ฅ๋ฐ์์ ๊ฐ๊ฐ์ ์ํ๋ฒณ์ด ์ฒ์ ๋ฑ์ฅํ๋ ์์น๋ฅผ 0์์๋ถํฐ ์ซ์๋ฅผ 1์ฉ ๋ํด๊ฐ๋ฉฐ ์ถ๋ ฅํ๋ ํ๋ก๊ทธ๋จ์ ๋ง๋๋ ๊ฒ์ด๋ค. ๋ง์ฝ, ์ ๋ ฅ๋ฐ์ ๋ฌธ์์ด์ ํด๋นํ๋ ๋ฌธ์๊ฐ ์ํ๋ฒณ a๋ถํฐ ์ํ๋ฒณ z์ ํฌํจ๋์ด ์์ง ์๋ค๋ฉด –1์ ์ถ๋ ฅํ๊ณ , ํฌํจ๋์ด ์๋ค๋ฉด ๊ทธ ์๋ฆฟ์๋ฅผ ํ์ํ๋๋ก ํ๋ฉด ๋๋ค. ๋จผ์ for๋ฌธ์ ์ด์ฉํด์ ์ํ๋ฒณ a๋ถํฐ ์ํ๋ฒณ z๊น์ง ๋ฐ๋ณตํ ํ์ ์ด์ค for๋ฌธ์ ์ด์ฉํด์ ๋ฐฐ์ด์ ๊ธธ์ด๋งํผ ๋ฐ๋ณตํด์ ์ ๋ ฅ๋ ๋ฌธ์์ ์ํ๋ฒณ์ ์๋ฆฟ์๋ฅผ ํ์ธํ๊ฒ ํ๊ณ , check ๋ณ์๋ฅผ ์ฌ์ฉํด ๋ง์ฝ check๊ฐ 1์ด๋ผ๋ฉด ์ํ๋ฒณ์ ์๋ฆฟ์๋ฅผ ์ถ๋ ฅํ๊ณ , check๊ฐ 0์ด๋ผ๋ฉด –1์ ์ถ๋ ฅํ๋๋ก ํ๋ค.
#include <stdio.h> int main(void) { char S[102]; int size = 0; int check = 0; scanf("%s", S); while (S[size] != '\0') size++; for (int i = 'a'; i <= 'z'; i++) { for (int j = 0; j < size; j++) if (S[j] == i) { printf("%d ", j); check = 1; break; } if (check == 0) printf("-1 "); check = 0; } return 0; }
๋ฐ์ํ