no image
자바 [Programmers] 2단계 - 짝지어 제거하기
📝문제 설명 - 연속된 문자가 2개가 나타나면 삭제된다.- 연속된 문자를 계속 삭제하여 문자열을 모두 제거하면 1을 반환 아니면 0 반환- 뭔가 괄호 문제랑 비슷..?!!📢입출력 예시 ✏️문제 풀이import java.util.*; class Solution{ public int solution(String s) { int answer = -1; Stack mystack = new Stack(); for(int i=0; i💡새로 알게된 점다른 사람들이 푼 코드를 보다가 return 형식을 간단하게 하는 방법을 보았다.return stack.isEmpty() ? 1 : 0; 삼항연산자를 쓰면 return 값을 보다 짧게 나타낼 수 있다.
2024.12.03
no image
자바 [Programmers] 2단계 - JadenCase 문자열 만들기
import java.util.*;class Solution { public String solution(String s) { s = s.toLowerCase(); StringBuffer sb = new StringBuffer(); for(int i=0; i 1. 입력받은 문자열을 모두 소문자로 만든다. (toLowerCase() 함수 사용)2. 문자열 s의 원소값 1개씩 String 자료형으로 받는다. 그 이유는 toUpperCase() 함수를 사용하기 위해3. 원소값 앞에 공백이 있으면 해당 자리는 대문자로 취급해야 하기에 s.charAt(i-1) == ' ' 처리
2024.11.28
no image
자바 [Programmers] 2단계 - 이진 변환 반복하기
class Solution { public int[] solution(String s) { int[] answer = new int[2]; int seqCount = 0; int zeroCount = 0; while(s.length() != 1){ String deleteZero = ""; String binary = ""; for(int i=0; i 1. 입력받은 s 문자열에 1이 들어가 있으면 0을 제거한 문자열을 담는 곳에 추가2. 입력받은 s 문자열에 0이 들어가 있으면 0을 제거했다는 count 개수 증가3. 0을 제거한 문자열에 대해 길이 값을 2진수로 변환4. 1~..
2024.11.28
no image
자바 [Programmers] 2단계 - 다음 큰 숫자
class Solution { public int solution(int n) { int answer = 0; String nBinaryCount = Integer.toBinaryString(n); nBinaryCount = nBinaryCount.replace("0",""); int nCount = nBinaryCount.length(); while(true){ int temp = ++n; String tempBinaryCount = Integer.toBinaryString(temp); tempBinaryCount = tempBinaryCou..
2024.11.28
no image
자바 [Programmers] 2단계 - 피보나치 수
틀린 코드class Solution { public int solution(int n) { int answer = fi(n); return answer % 1234567; } private int fi(int n){ if(n == 0){ return 0; }else if(n == 1){ return 1; } return fi(n-2) + fi(n-1); }} 위 코드 대로 했더니 시간 초과가 났다.단순 피보나치 구현 문제인 줄 알았는데 시간 초과가 났다는건 피보나치 구현을 dynamic programming을 써야된다는 것을 파악했다. 수정 코드cl..
2024.11.28
no image
자바 [Programmers] 2단계 - 올바른 괄호
import java.util.Stack;class Solution { boolean solution(String s) { boolean answer = true; Stack mystack = new Stack(); for(int i=0; i 1. Charater형의 Stack을 선언한다.2. 입력받은 s의 String형 길이만큼 반복문 수행3. 반복문은 ( 여는 괄호가 들어오면 push4. ) 닫는 괄호가 들어왔을 때, 스택이 비어 있으면 바로 return false해준다. 그 이유는 비어있을 때 ) 닫는 괄호가 들어왔다는 건 ( 여는 괄호랑 짝이 안맞다는 의미5. ) 닫는 괄호가 들어왔을 때, 스택이 비어 있지 않으면 ( 여는 괄호랑 짝이 맞는..
2024.11.25
no image
자바 [Programmers] 2단계 - 최댓값과 최솟값
class Solution { public String solution(String s) { String answer = ""; String[] numbers = s.split(" "); int min = Integer.MAX_VALUE; int max = Integer.MIN_VALUE; for(int i=0; i 1. 문자열 s는 둘 이상의 정수가 공백으로 구분 되어 있다. ex) "-1 -2 -3 -4"2. 공백 기준으로 String형 배열에 넣어준다.-1-2-3-4 3. 반복문에서 String형 배열의 인덱스 값마다 Integer형으로 형변환 후 Math 함수를 이용해 연산
2024.11.25
[Android Studio] 공공데이터 API 사용해보기
2024.10.23