[programmers] ์นด๋ ๋ญ์น - Java
์นด๋ ๋ญ์น ๋ฌธ์ ์์๋ ๋ ๊ฐ์ ์นด๋ ๋ญ์น์์ ์นด๋๋ฅผ ์์๋๋ก ์ฌ์ฉํ์ฌ ์ํ๋ ๋จ์ด ๋ฐฐ์ด์ ๋ง๋๋ ๊ฒ์ด ๋ชฉํ์
๋๋ค. ์นด๋๋ ํ ๋ฒ๋ง ์ฌ์ฉ ๊ฐ๋ฅํ๋ฉฐ, ์์๋ฅผ ๋ณ๊ฒฝํ ์ ์์ต๋๋ค. ๋ง์ฝ ์ํ๋ ๋จ์ด ๋ฐฐ์ด์ ๋ง๋ค ์ ์๋ค๋ฉด "Yes"๋ฅผ, ๋ง๋ค ์ ์๋ค๋ฉด "No"๋ฅผ ๋ฐํํฉ๋๋ค. ์ด ๋ฌธ์ ๋ ๊ฐ ๋ฐฐ์ด์ ์ธ๋ฑ์ค๋ฅผ ๋ฐ๋ก ์ฆ๊ฐ์ํค๊ณ , ํด๋น ์ธ๋ฑ์ค์ ์์น์ ์ผ์นํ๋ ๋ฌธ์์ด์ด ์๋ค๋ฉด "No"๋ฅผ ๋ฐํํ๋ ๋ฐฉ์์ผ๋ก ๊ตฌํํ ์ ์์ต๋๋ค.
Mar 08, 2024
์นด๋ ๋ญ์น
๋ฌธ์ ์ค๋ช
์ฝ๋๋ ์์ด ๋จ์ด๊ฐ ์ ํ ์นด๋ ๋ญ์น ๋ ๊ฐ๋ฅผ ์ ๋ฌผ๋ก ๋ฐ์์ต๋๋ค. ์ฝ๋๋ ๋ค์๊ณผ ๊ฐ์ ๊ท์น์ผ๋ก ์นด๋์ ์ ํ ๋จ์ด๋ค์ ์ฌ์ฉํด ์ํ๋ ์์์ ๋จ์ด ๋ฐฐ์ด์ ๋ง๋ค ์ ์๋์ง ์๊ณ ์ถ์ต๋๋ค.
- ์ํ๋ ์นด๋ ๋ญ์น์์ ์นด๋๋ฅผ ์์๋๋ก ํ ์ฅ์ฉ ์ฌ์ฉํฉ๋๋ค.
- ํ ๋ฒ ์ฌ์ฉํ ์นด๋๋ ๋ค์ ์ฌ์ฉํ ์ ์์ต๋๋ค.
- ์นด๋๋ฅผ ์ฌ์ฉํ์ง ์๊ณ ๋ค์ ์นด๋๋ก ๋์ด๊ฐ ์ ์์ต๋๋ค.
- ๊ธฐ์กด์ ์ฃผ์ด์ง ์นด๋ ๋ญ์น์ ๋จ์ด ์์๋ ๋ฐ๊ฟ ์ ์์ต๋๋ค.
์๋ฅผ ๋ค์ด ์ฒซ ๋ฒ์งธ ์นด๋ ๋ญ์น์ ์์๋๋ก ["i", "drink", "water"], ๋ ๋ฒ์งธ ์นด๋ ๋ญ์น์ ์์๋๋ก ["want", "to"]๊ฐ ์ ํ์์ ๋ ["i", "want", "to", "drink", "water"] ์์์ ๋จ์ด ๋ฐฐ์ด์ ๋ง๋ค๋ ค๊ณ ํ๋ค๋ฉด ์ฒซ ๋ฒ์งธ ์นด๋ ๋ญ์น์์ "i"๋ฅผ ์ฌ์ฉํ ํ ๋ ๋ฒ์งธ ์นด๋ ๋ญ์น์์ "want"์ "to"๋ฅผ ์ฌ์ฉํ๊ณ ์ฒซ ๋ฒ์งธ ์นด๋๋ญ์น์ "drink"์ "water"๋ฅผ ์ฐจ๋ก๋๋ก ์ฌ์ฉํ๋ฉด ์ํ๋ ์์์ ๋จ์ด ๋ฐฐ์ด์ ๋ง๋ค ์ ์์ต๋๋ค.
๋ฌธ์์ด๋ก ์ด๋ฃจ์ด์ง ๋ฐฐ์ด
cards1
, cards2
์ ์ํ๋ ๋จ์ด ๋ฐฐ์ด goal
์ด ๋งค๊ฐ๋ณ์๋ก ์ฃผ์ด์ง ๋, cards1
๊ณผ cards2
์ ์ ํ ๋จ์ด๋ค๋ก goal
๋ฅผ ๋ง๋ค ์๋ค๋ฉด "Yes"๋ฅผ, ๋ง๋ค ์ ์๋ค๋ฉด "No"๋ฅผ returnํ๋ solution ํจ์๋ฅผ ์์ฑํด์ฃผ์ธ์.์ ํ์ฌํญ
- 1 โค
cards1
์ ๊ธธ์ด,cards2
์ ๊ธธ์ด โค 10 - 1 โค
cards1[i]
์ ๊ธธ์ด,cards2[i]
์ ๊ธธ์ด โค 10 cards1
๊ณผcards2
์๋ ์๋ก ๋ค๋ฅธ ๋จ์ด๋ง ์กด์ฌํฉ๋๋ค.
- 2 โค
goal
์ ๊ธธ์ด โคcards1
์ ๊ธธ์ด +cards2
์ ๊ธธ์ด - 1 โค
goal[i]
์ ๊ธธ์ด โค 10 goal
์ ์์๋cards1
๊ณผcards2
์ ์์๋ค๋ก๋ง ์ด๋ฃจ์ด์ ธ ์์ต๋๋ค.
cards1
,cards2
,goal
์ ๋ฌธ์์ด๋ค์ ๋ชจ๋ ์ํ๋ฒณ ์๋ฌธ์๋ก๋ง ์ด๋ฃจ์ด์ ธ ์์ต๋๋ค.
์ ์ถ๋ ฅ ์
cards1 | cards2 | goal | result |
["i", "drink", "water"] | ["want", "to"] | ["i", "want", "to", "drink", "water"] | "Yes" |
["i", "water", "drink"] | ["want", "to"] | ["i", "want", "to", "drink", "water"] | "No" |
์ ์ถ๋ ฅ ์ ์ค๋ช
์
์ถ๋ ฅ ์ #1
๋ณธ๋ฌธ๊ณผ ๊ฐ์ต๋๋ค.
์
์ถ๋ ฅ ์ #2
cards1
์์ "i"๋ฅผ ์ฌ์ฉํ๊ณ cards2
์์ "want"์ "to"๋ฅผ ์ฌ์ฉํ์ฌ "i want to"๊น์ง๋ ๋ง๋ค ์ ์์ง๋ง "water"๊ฐ "drink"๋ณด๋ค ๋จผ์ ์ฌ์ฉ๋์ด์ผ ํ๊ธฐ ๋๋ฌธ์ ํด๋น ๋ฌธ์ฅ์ ์์ฑ์ํฌ ์ ์์ต๋๋ค. ๋ฐ๋ผ์ "No"๋ฅผ ๋ฐํํฉ๋๋ค.solution.java
class Solution { public String solution(String[] cards1, String[] cards2, String[] goal) { int idx1 = 0; // cards1 ๋ฐฐ์ด์ ์ธ๋ฑ์ค int idx2 = 0; // cards2 ๋ฐฐ์ด์ ์ธ๋ฑ์ค // goal ๋ฐฐ์ด ์ํ for (String currentStr : goal) { // currentStr์ด cards1[idx1] ๋๋ cards2[idx2]์ ํฌํจํ๋์ง ํ์ธ if (idx1 < cards1.length && currentStr.equals(cards1[idx1])) { idx1++; // cards1[idx1]์ ํฌํจํ๋ ๊ฒฝ์ฐ idx1 ์ฆ๊ฐ } else if (idx2 < cards2.length && currentStr.equals(cards2[idx2])) { idx2++; // cards2[idx2]์ ํฌํจํ๋ ๊ฒฝ์ฐ idx2 ์ฆ๊ฐ } else { return "No"; // ๋ ๋ค ํฌํจํ์ง ์๋ ๊ฒฝ์ฐ } } return "Yes"; } }
ํต์ฌ ํค์๋
- ๊ฐ ๋ฐฐ์ด์ ์ธ๋ฑ์ค๋ฅผ ๋ฐ๋ก ์ฆ๊ฐ์ํค๊ณ , ํด๋น ์ธ๋ฑ์ค์ ์์น์ ์ผ์นํ๋ ๋ฌธ์์ด์ด ์๋ค๋ฉด no๋ฅผ ๋ฐํํ๋ ๋ฐฉ์์ผ๋ก ๊ตฌํํ๋ค.
๊ฒฐ๋ก !
์ฒ์ ์๋ํ ๋ฐฉ๋ฒ์ ๋จ์ํ ์ด์ค ๋ฐ๋ณต๋ฌธ์ ํตํด ๋ฐ๋ณต์ํค๋ ค ํ์ผ๋, ์ธ๋ฑ์ค๋ฅผ ๋ฐ๋ก ์ค์ ํ ์ ์์๋ค. ์ด๋ฅผ ์ธ๋ฑ์ค ๋ณ์๋ฅผ ๋ฐ๋ก ์ ์ธํ์ฌ ํด๊ฒฐํ ์ ์์๋ค.
Share article