오늘은 솔직히 많이 여유롭게 놀아버렸다ㅎㅎ
그래도 알고리즘 문제를 풀어서 얼마나 다행인지ㅎㅎㅎ
처음 문제를 봤을때는 어려워서 어떡하지 했는데 다행히 풀어서 마음이 놓인다.
import java.util.Objects;
class Solution {
public int[] solution(String[] keyinput, int[] board) {
int x = 0;
int y = 0;
for (int i = 0; i < keyinput.length; i++) {
if (Objects.equals(keyinput[i], "left")) {
x -= 1;
if(x < (board[0]/2)*-1) {
x = board[0]/2*-1;
}
} else if (Objects.equals(keyinput[i], "right")) {
x += 1;
if(x > board[0]/2) {
x = board[0]/2;
}
} else if (Objects.equals(keyinput[i], "up")) {
y += 1;
if(y > board[1]/2) {
y = board[1]/2;
}
} else if (Objects.equals(keyinput[i], "down")) {
y -= 1;
if(y < (board[1]/2)*-1) {
y = board[1]/2*-1;
}
}
}
int[] answer = {x,y};
return answer;
}
}
나의 풀이이다.
제일 고전했던 부분은 바운더리를 넘지 않게끔 하는것이였는데
if(x < (board[0]/2)*-1) {
x = board[0]/2*-1;
}
이렇게 해결했다. board/2값을 그냥 x값에 넣어주면 끝나는 문제!
알고리즘도 하다보니 무척 재밌는것 같다 처음에는 너무 어려워서 하기 싫었는데 하나하나 풀어가는 재미가 쌓인다.
내일은 스프링 입문 꼭 복습해야지!