Tags
- dfs
- Dynamic Programming
- ๋๋น ์ฐ์ ํ์
- ์ํ
- ๊ทธ๋ํ ์ด๋ก
- BFS
- CodingTest
- ๋ฌธ์์ด
- ์ ์๋ก
- Study
- stack
- ๊ต์ฌ
- ๊ตฌํ
- ๋ฐฑํธ๋ํน
- ์๋ฎฌ๋ ์ด์
- sort
- ๊ทธ๋ํ ํ์
- ๊น์ด ์ฐ์ ํ์
- queue
- SpringBoot
- Python
- greedy
- Java
- Brute Force Algorithm
- DP
- ์ ๋ ฌ
- LV2
- ์๋ฃ๊ตฌ์กฐ
- BOJ
- PGM
Archives
๊ธฐ๋ก๋ฐฉ
Lv.2 : ์นดํซ ๋ณธ๋ฌธ
๐ธ ๋ฌธ์ ๋ถ์ ๐ธ
- ์ง์ฌ๊ฐํ์ ํ๋๋ฆฌ ๊ฒฉ์ ์ brown๊ณผ ๊ทธ ์์ชฝ ๊ฒฉ์์ ์ yellow๋ฅผ ์ ๋ ฅ๋ฐ๋๋ค.
- ์ง์ฌ๊ฐํ์ ๊ฐ๋ก์ ์ธ๋ก ๊ธธ์ด๋ฅผ ๋ฐํํ๋ค.
๐ธ ๋ฌธ์ ํ์ด ๐ธ
- ๊ฐ๋ก ๊ธธ์ด๋ ์ธ๋ก ๊ธธ์ด๋ณด๋ค ํฌ๊ฑฐ๋ ๊ฐ๋ค.
- ์ธ๋ก ๊ธธ์ด๋ฅผ 1๋ถํฐ ๊ฐ๋ก์ ๊ฐ์ ์ง ๋ ๊น์ง ํค์๊ฐ๋ฉฐ brwon๊ณผ yellow๊ฐ์ด ๋์ค๋์ง ํ์ธํ๋ค.
- brown = 2x + 2y - 4
- 2(x + y - 2) = brown
- x + y = brown/2 + 2
- yellow = (x-2) * (y-2)
- brown = 2x + 2y - 4
๐ธ ์ฝ๋ ๐ธ
class Solution {
public int[] solution(int brown, int yellow) {
int row = (brown / 2 + 2) - 1;
int col = 1;
while(row >= col) {
if(2 * row + 2 * col - 4 == brown && (row-2) * (col-2) == yellow) break;
row--;
col++;
}
return new int[] {row, col};
}
}
๐ธ ์ฝ๋ ํด์ ๐ธ
- ์ธ๋ก ๊ธธ์ด์ธ col์ ๊ฐ๋ก ๊ธธ์ด์ธ row์ ๊ฐ์ ์ง ๋๊น์ง ํค์๊ฐ๋ฉฐ brown๊ณผ yellow๊ฐ ๋์ค๋ col, row ๊ฐ์ ์ฐพ๋๋ค.
๐ธ end ๐ธ
- ๋ธ๋ฃจํธ ํฌ์ค๋ก ๊ฐ๋จํ ํ์ดํ ์ ์์๋ค.
- ์ด์ฐจ๋ฐฉ์ ์์ผ๋ก ๋ ๊ฐ๋จํ ํ ์ ์๋ ์ถ์๋๋ฐ, ๋ค๋ฅธ ํ์ด์์ ๊ทผ์ ๊ณต์์ ์ฌ์ฉํ ๊ฒฝ์ฐ๋ฅผ ๋ดค๋ค. ์ญ์ ์ํ์ ์ ํด์ผ ํ๋ค.
728x90
'CodingTest > Java' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
Lv.2 : ๊ตฌ๋ช ๋ณดํธ (0) | 2023.09.12 |
---|---|
Lv.2 : ์์ด ๋๋ง์๊ธฐ (0) | 2023.09.12 |
Lv.2 : ์ง์ง์ด ์ ๊ฑฐํ๊ธฐ (0) | 2023.09.08 |
Lv.2 : ํผ๋ณด๋์น ์ (0) | 2023.09.08 |
Lv.2 : ๋ค์ ํฐ ์ซ์ (0) | 2023.09.07 |