diff --git "a/0517/Programmers/Lv1/\353\202\264\354\240\201_ko.java" "b/0517/Programmers/Lv1/\353\202\264\354\240\201_ko.java" index 8b13789..b093149 100644 --- "a/0517/Programmers/Lv1/\353\202\264\354\240\201_ko.java" +++ "b/0517/Programmers/Lv1/\353\202\264\354\240\201_ko.java" @@ -1 +1,9 @@ - +class Solution { + public int solution(int[] a, int[] b) { + int answer = 0; + int len = a.length; + for (int i = 0; i < len; i++) + answer += a[i] * b[i]; + return answer; + } +} \ No newline at end of file diff --git "a/0517/Programmers/Lv2/\353\260\251\353\254\270\352\270\270\354\235\264_ko.java" "b/0517/Programmers/Lv2/\353\260\251\353\254\270\352\270\270\354\235\264_ko.java" index 8b13789..c418a5f 100644 --- "a/0517/Programmers/Lv2/\353\260\251\353\254\270\352\270\270\354\235\264_ko.java" +++ "b/0517/Programmers/Lv2/\353\260\251\353\254\270\352\270\270\354\235\264_ko.java" @@ -1 +1,39 @@ +import java.util.HashSet; +class Solution { + public int solution(String dirs) { + HashSet set = new HashSet<>(); + int len = dirs.length(); + int[] dx = { -1, 1, 0, 0 }; // 상하우좌 + int[] dy = { 0, 0, 1, -1 }; + int x = 0; // -5~5사용 + int y = 0; + int nx, ny; + int mode = 0; + for (int i = 0; i < len; i++) { + switch (dirs.charAt(i)) { + case 'U': + mode = 0; + break; + case 'D': + mode = 1; + break; + case 'R': + mode = 2; + break; + case 'L': + mode = 3; + break; + } + nx = x + dx[mode]; + ny = y + dy[mode]; + if (nx < -5 || ny < -5 || nx > 5 || ny > 5) + continue; + set.add(Integer.toString(nx) + ny + x + y); + set.add(Integer.toString(x) + y + nx + ny); + x = nx; + y = ny; + } + return set.size()/2; + } +}