코딩테스트 29

[프로그래머스] Lv.0 조건 문자열(Java) ※

1. 문제 2. 제출 답안 public int solution(int n, int m, String ineq, String eq) { if (eq.equals("=")) { if (ineq.equals(">")) { return n >= m ? 1 : 0; } else { // ineq.equals("")) { return n > m ? 1 : 0; } else { // ineq.equals("=", (a, b) -> a >= b, "!", (a, b) -> a > b, "") && eq.equals("=")) answer = n >= m; else if (ineq.equals("") && eq.equals("!")) answer = n > m; else answer = n < m; return answ..

[프로그래머스] Lv.0 공배수(Java)

1. 문제 2. 제출 답안 class Solution { public int solution(int number, int n, int m) { int answer = 0; answer = (number % n == 0 && number % m == 0) ? 1 : 0; return answer; } } 코드에서 int answer = 0; 는 초기화를 진행하지만, 이 초기화는 answer 변수가 조건문을 통해 어떤 값을 가질지 명시적으로 나타내는 것입니다. 실제로 int answer; 와 같이 변수를 선언만하고 초기화하지 않아도 문법적으로 허용됩니다. 이 경우 컴파일러는 기본적으로 변수를 0 또는 해당 데이터 타입의 기본값으로 초기화합니다. 삼항 연산자를 사용하였다! 그리고 논리 연산자 && 을 사용해야..

[프로그래머스] Lv.0 n의 배수(Java)

1. 문제 2. 제출 답안 class Solution { public int solution(int num, int n) { int answer = 0; if(num % n == 0){ return 1; } else { return 0; } } } 소소한 온전히 내 힘만으로 푼 문제..! 그래도 풀다 보니 보이긴 하는구나~ 통과의 희열이란 이런 것이군 ㅎㅎㅎ class Solution { public int solution(int num, int n) { int answer = 0; if(num % n == 0){ answer = 1; } else { answer = 0; } return answer; } } 이미 answer가 있으므로 그걸 이용하는 게 더 좋겠군..! 3. 다른 풀이 class Sol..

[프로그래머스] Lv.0 더 크게 합치기(Java) ※

1. 문제 2. GPT의 풀이 public class Solution { public int solution(int a, int b) { // a ⊕ b 구하기 int ab = Integer.parseInt(Integer.toString(a) + Integer.toString(b)); // 2 * a * b 구하기 int product = 2 * a * b; // 두 값 중에서 큰 값을 반환 if (ab > product) { return ab; } else { return product; } } } 3. 다른 풀이 class Solution { public int solution(int a, int b) { return Math.max(Integer.parseInt(String.valueOf(a)+St..

[프로그래머스] Lv.0 더 크게 합치기(Java) ※

1. 문제 2. 제출 답안 두 정수를 문자열로 변환하고 그 문자열을 합쳐야 한다는 건 알겠다... 3. 다른 풀이 class Solution { public int solution(int a, int b) { int answer = 0; int aLong = Integer.parseInt(""+a+b); int bLong = Integer.parseInt(""+b+a); answer = aLong > bLong ? aLong : bLong; return answer; } } parseInt : 문자열을 정수로 변환하기 위해 사용되는 메서드 ""(빈 문자열)는 주어진 정수 a와 b를 문자열로 변환하여 이어붙이기 위한 방법

[프로그래머스] Lv.0 문자열 곱하기(Java)

1. 문제 2. 제출 답안 class Solution { public String solution(String my_string, int k) { String answer = ""; for(int i = 0; i < k; i++){ answer += my_string; } return answer; } } 3. 다른 풀이 class Solution { public String solution(String my_string, int k) { return my_string.repeat(k); } } 앞서 한 번 나왔던 repeat 메서드... repeat public String repeat(int count) // count는 원하는 반복 횟수를 나타내는 정수 String original = "Hello,..

[프로그래머스] Lv.0 문자 리스트를 문자열로 변환하기(Java)

1. 문제 2. 제출 답안 class Solution { public String solution(String[] arr) { String answer = ""; for(int i = 0; i < arr.length; i++){ answer += arr[i]; } return answer; } } 3. 다른 풀이 1) class Solution { public String solution(String[] arr) { return String.join("", arr); } } join : 주어진 구분자를 사용하여 문자열 배열 또는 컬렉션의 요소를 하나의 문자열로 결합하는 데 사용됨 - 배열 arr의 모든 요소를 빈 문자열("")을 사용하여 이어붙임 2) class Solution { public Strin..

[프로그래머스] Lv.0 문자열 섞기(Java)

1. 문제 2. 제출 답안 class Solution { public String solution(String str1, String str2) { String answer = ""; for(int i = 0; i < str1.length(); i++){ answer += str1.substring(i, i+1); answer += str2.substring(i, i+1); } return answer; } } 3. 다른 풀이 class Solution { public String solution(String str1, String str2) { String answer = ""; for(int i = 0; i < str1.length(); i++){ answer+= str1.charAt(i); answ..

[프로그래머스] Lv.0 a문자열 겹쳐쓰기(Java) ※(어려움의 표시)

1. 문제 2. 제출 답안 명확한 코드가 떠오르지 않음... substring 메서드를 이용해야 하는 듯 : 특정 위치 기준으로 문자열을 잘라 표현 가능 String.substring(int start); // start부터 자르기 String.substring(int start, int end); // start부터 end 앞까지 자르기 index는 0부터 시작하며, 공백도 index에 포함된다! = length() split 메서드는 String 값을 특수기호로 끊어서 배열에 저장시켜줌 3. 다른 풀이 1) 좋아요 많은 풀이 class Solution { public String solution(String my_string, String overwrite_string, int s) { String ..