https://www.acmicpc.net/problem/11660우선, 이중배열을 제대로 짚고 넘어가야 이 문제를 이해하기 쉽다.intM의 경우, M개의 행과 N개의 열 이라는 뜻이다.즉, 다음과 같은 모양인 것이다.초반, 내가 생각한 프로세스는 다음과 같았
https://www.acmicpc.net/problem/11659이 문제를 통해 누적합이라는 개념에 대해 처음 알게 되었다. 또한, 백준에서 늘 예외 처리를 해 왔었는데 예외 처리에서 잘못되면 런타임 에러가 발생하기 때문에 예외처리를 하는 것이 꼭 좋은 것만
https://www.acmicpc.net/problem/2018 이 문제는 배열을 응용하는 투 포인터를 사용하는 문제이다. 포인터를 2개를 사용하여 시간 복잡도를 줄이는 알고리즘이다. Two Pointers list에서 연속된 범위를 구해야 할 때 두 개의 poi
https://www.acmicpc.net/problem/1253이 문제를 보자마자 전에 풀었던 것 처럼 '투 포인터'를 사용하면 된다는 생각이 떠올랐다. 하지만, 첫 접근 이후 가장 중요한 사실인 '정렬'을 놓쳐 접근에서 조금 시간이 걸렸다..투 포인터는 '
https://www.acmicpc.net/problem/1940이 문제도 투포인터 문제이다.이 문제에서 sum == M인 경우 start와 end값을 조율해 주어야 하는 로직을 생각 하는 것이 살짝 시간이 걸렸다.문제의 예시처럼 2, 7, 4, 1, 5, 3
https://www.acmicpc.net/problem/28278문제 자체는 어렵지 않았다. 초반에는 입력 값이 수이고, 두개 이상일 경우에만 두 번째 값이 명령이라고 생각해서 결과값이 다르게 나왔었지만, 문제를 다시 읽어보니 입력값이 전부 '명령'이었다.하
https://www.acmicpc.net/problem/10773이 문제는 스택을 사용하는 문제이다.LIFO(Last In First Out)나중에 들어간 것이 먼저 나옴입구와 출구 모두 하나쌓여있는 팬케이크라고 생각하면 편함. 맨 위에 있는 팬케이크 부터
https://www.acmicpc.net/problem/1874이 문제를 이해하는 데에 시간이 많이 소요됐었다. 하지만, 문제를 이해하고 난 후에는 쉽게 풀 수 있었다.입력이 8이면, '1,2,3,4,5,6,7,8'의 숫자가 있는 것이다. 이 숫자들을 스택에
https://www.acmicpc.net/problem/2164이 문제는 큐를 이용하는 문제이다. FIFO(First in first out)선입 선출큐의 맨 위는 첫 번째 요소를 의미하고, 큐의 맨 아래는 마지막 요소를 의미함poll : 첫 번째 요소를 버
https://www.acmicpc.net/problem/18258LinkedList로 구현해서 그런지 큐의 가장 마지막에 들어 있는 요소를 출력하는 메소드가 존재하지 않았다. 그래서 push 할 때, 가장 마지막 요소를 같이 update 해 주도록 구현하였다
https://www.acmicpc.net/problem/25501재귀 문제이다.처음에는 아래와 같이 코드를 작성하였는데, 시간 초과가 발생하였다. 아무래도 예제 입력을 복사하고 붙여넣기 한 후 enter를 눌러야지만 코드가 돌아갔어서 그런 것 같다.그래서 s
https://www.acmicpc.net/problem/1427정렬 문제였다. 문제 자체는 내림차순으로 정렬하려면 까다로워 보이지만, 자바에서 제공하는 sort 기능을 사용하면 간단하게 풀리는 문제이다.문제에서는 정렬하려고 하는 수 N이 자연수라고 하였다.
https://www.acmicpc.net/problem/11399이 문제는 정렬을 이용하는 문제이다. 시간을 기준으로 오름차순 정렬을 한 후, 누적합을 구해 누적합끼리의 합을 구하면 된다.출력 초과는 처음보는데, print문을 문제에서 주는 것 이외에 작성할
https://www.acmicpc.net/problem/11004정렬을 이용하는 문제이다. 문제를 푸는 데 어려움이 크게 없었다.하지만, 이 문제에서 N이 필요가 없다고 생각하였고, 결과값도 똑같이 나왔다. 그 코드는 아래와 같다.하지만, 시간 초과로 실패가
https://www.acmicpc.net/problem/2751이 문제도 정렬 문제이다. 입력 받은 수를 배열에 저장해두고, 배열을 정렬시킨 후 StringBuffer를 사용하여 출력시키면 된다.
https://www.acmicpc.net/problem/1145이 문제는 완전 탐색 알고리즘을 사용하는 문제이다. 즉, 모든 경우의 수를 전부 탐색해야 한다.처음에는 3중 for문을 이용하여 각각의 for문에서 꺼내는 배열 요소가 min값으로 나누어지면 다음
https://www.acmicpc.net/problem/11047이 문제는 그리디 알고리즘을 사용하여 푸는 문제이다.그리디 알고리즘은 탐욕스러운 알고리즘이다. 즉, 가장 탐욕스러운 방법을 선택한다는 것이다. 이 의미는 '선택의 순간'이 올 때마다 그 상황에서
https://www.acmicpc.net/problem/1541 이 문제는 -가 나오고 난 후의 숫자들은 전부 빼 주어야 하는 문제이다. 우선, -를 기준으로 split을 하고 나면 -의 앞 숫자, -, 뒷 숫자들이 배열에 저장된다. 이 때 뒷 숫자들은 다시 +를 기
시간 초과가 발생하였다 ㅠㅠ 그래서 찾아보니, Comparator라는 것을 사용해 주어야 한다고 한다... 새로운 인터페이스는 어려워서 기존 로직을 직접 구현하려고 했지만, 결국에는 사용해 주어야 하나 보다 ㅠㅠ자바에서 객체의 비교를 지원하는 인터페이스주로 정렬이나 자
https://www.acmicpc.net/problem/1978따로 소수인지 아닌지를 저장해 주는 값이 필요가 없다고 생각하였다. 하지만, 아래의 내가 작성한 코드는 num값이 소수가 아니어도 cnt가 증가한다. 즉, 내부의 for문을 다 돌리고 나서 이 수
https://www.acmicpc.net/problem/25811은 소수가 아니라는 사실과 입력이 음수일 수도 있다는 사실을 놓쳐서 두 번이나 틀렸다ㅠㅠ 앞으로는 더 주의깊게 보는 습관을 길러야겠다.
https://www.acmicpc.net/problem/1929이 문제는 범위 내의 소수를 작은 수 부터 차례대로 출력하는 문제이다.
https://school.programmers.co.kr/learn/courses/30/lessons/68644
https://www.acmicpc.net/problem/2609최대공약수와 최소공배수의 개념을 알고 있어야 풀 수 있는 문제이다.최대공약수 : 숫자가 가장 큰 공약수최소공배수 : 숫자가 가장 작은 공배수이 때, 최대공약수는 유클리드 호제법을 이용하여 구할 수
https://school.programmers.co.kr/learn/courses/30/lessons/42586
https://school.programmers.co.kr/learn/courses/30/lessons/43165이 문제는 깊이 우선 탐색(DFS) 문제이다. 문제를 그려 보면 다음과 같다.(물론 초반의 0은 문제에서 주어지지 않는다. 내가 이해하기 쉽도록 임
\[https://school.programmers.co.kr/learn/courses/30/lessons/42576hashmap에서의 value값을 가져오지 않고, num이라는 변수를 선언하여 1씩 증가시키는 로직을 시도하였었기 때문에 문제 푸는 시간이 조금
https://school.programmers.co.kr/learn/courses/30/lessons/1844이 문제는 최단 거리를 찾는 문제이다. 최단 거리를 찾으려면 bfs(너비 우선 탐색) 알고리즘을 사용하면 된다. 이 문제를 풀며 어려웠던 점은 '큐
https://school.programmers.co.kr/learn/courses/30/lessons/43162처음에는 네트워크 분석 문제이기 때문에 bfs를 사용하려고 했다. 하지만, 이 문제는 모든 요소를 탐색하는 것이 목적이고, 그나마 구현이 간편한 d
https://school.programmers.co.kr/learn/courses/30/lessons/144853
https://school.programmers.co.kr/learn/courses/30/lessons/164673이 문제에서의 출력 결과와 내가 푼 출력 결과가 달라서 많이 혼란스러웠었다.. 문제에서의 출력 결과는 일부만 주어진 것인가보다 .. ㅠㅠ
https://school.programmers.co.kr/learn/courses/30/lessons/298518
https://school.programmers.co.kr/learn/courses/30/lessons/59034
https://school.programmers.co.kr/learn/courses/30/lessons/131697
https://school.programmers.co.kr/learn/courses/30/lessons/131115
https://school.programmers.co.kr/learn/courses/30/lessons/59406
https://school.programmers.co.kr/learn/courses/30/lessons/293261FISH_INFO와 FISH_NAME_INFO에서 FISH_TYPE이 같은 것을 찾아 주어야 함. 이 때, FISH_TYPE을 FISH_TYPE으
https://school.programmers.co.kr/learn/courses/30/lessons/1845
https://school.programmers.co.kr/learn/courses/30/lessons/42577
https://school.programmers.co.kr/learn/courses/30/lessons/42578
https://school.programmers.co.kr/learn/courses/30/lessons/151137
https://school.programmers.co.kr/learn/courses/30/lessons/42584
https://school.programmers.co.kr/learn/courses/30/lessons/42587
https://school.programmers.co.kr/learn/courses/30/lessons/42583break문 때문에 많이 헤맸다.break문을 거는 조건은 '트럭이 다리에 올라 갈 때'이다. 즉, 현재 트럭(now)가 다리에 올라가는 로직을 수
https://school.programmers.co.kr/learn/courses/30/lessons/131114
https://school.programmers.co.kr/learn/courses/30/lessons/59039
https://school.programmers.co.kr/learn/courses/30/lessons/59407
https://school.programmers.co.kr/learn/courses/30/lessons/157343
https://school.programmers.co.kr/learn/courses/30/lessons/164668
https://school.programmers.co.kr/learn/courses/30/lessons/144855
https://school.programmers.co.kr/learn/courses/30/lessons/151139기간 동안 최소 5번 이상 대여된 차들만 필터링서브 쿼리에서 식별된 차들을 월별로 그룹화하고 각 차의 렌탈 기록 수 계산같은 기간 동안의 데이터만
https://school.programmers.co.kr/learn/courses/30/lessons/144854
https://school.programmers.co.kr/learn/courses/30/lessons/59042
https://school.programmers.co.kr/learn/courses/30/lessons/12909괄호의 개수를 가지고 판단할 수 있음. 단, 괄호의 순서를 고려해 주어야 함스택을 이용해도 풀 수 있음문자열 split'('이면 스택에 넣음')'이
https://school.programmers.co.kr/learn/courses/30/lessons/120902문자열 분리기호가 +,-이면 배열 안의 요소를 정수로 바꾼 후 계산
10진수를 2진수로 변환하려면 2로 계속 나누고, 나눈 나머지를 스택에 넣고 이것을 꺼내오면 된다. 그림으로 설명하면 다음과 같다.여기서의 6,3은 각각 몫이고, 옆에 적힌 1,0은 나머지이다. 책에 나오는 그림을 인용하면 다음과 같다.이 문제에서는 스택에 저장할 데이
https://school.programmers.co.kr/learn/courses/30/lessons/42840
https://school.programmers.co.kr/learn/courses/30/lessons/12949
https://school.programmers.co.kr/learn/courses/30/lessons/42889이 문제를 풀기 위해여 hashmap도 사용해 보았다.. 하지만 정렬에서 어려움을 맞아 다시 구현하였다. N번째 스테이지에서 그 다음 스테이지를 도
https://school.programmers.co.kr/learn/courses/30/lessons/49994이 문제는 방문했던 경로를 다시 방문하는 경우에는 길이 값을 더해주지 않는 문제이다.초반에는 이 문제를 풀 때, 각 좌표를 이중 배열의 index값
https://school.programmers.co.kr/learn/courses/30/lessons/181909이 문제는 Arrays.sort를 이용하면 쉽게 풀린다.문제에서 주어진 문자열을 split 해 준 후, 배열을 통해 하나씩 접근하여 새로운 문자열
https://school.programmers.co.kr/learn/courses/30/lessons/76502이 문제는 5점짜리 문제 같지 않았다 ㅠㅠ 시간이 매우 오래 걸렸기 때문이다.우선, 문자열을 순회하는 조건문을 만들기 위해 시간을 많이 썼는데, 어
https://school.programmers.co.kr/learn/courses/30/lessons/12973stack을 활용하는 문제이다.이 때, if(!stack.isEmpty() && now == stack.peek())라는 조건문을 사용할 때 스택이
https://school.programmers.co.kr/learn/courses/30/lessons/64061문제 자체는 어렵지 않았다. 인형뽑기의 그림에서 나온 대로, 각 열에 대한 stack을 만들어 주면 되는 문제이다.다만, 이중 for문을 돌려 각
https://school.programmers.co.kr/learn/courses/30/lessons/159994배열에서 카드를 순서대로만 뺄 수 있으며, 한 번에 한 배열에서 여러 장을 사용할 수 있으므로 큐를 사용해 주었다. 이 때, 큐를 두 개를 만들어
https://school.programmers.co.kr/learn/courses/30/lessons/131127문제를 잘 읽어야 한다.... 처음에 회원가입 한 날이 며칠째인지를 구해서 자꾸 틀렸다. 이렇게 풀어도 테스트 코드는 맞게 나오는데, 정답만 맞지
https://school.programmers.co.kr/learn/courses/30/lessons/42888초반에는 전부 들어 온 후에 닉네임을 변경 해 주어야 한다고 생각해서 Enter를 통해 HashMap을 생성한 후 이 key값을 이용해서 value
https://school.programmers.co.kr/learn/courses/30/lessons/164670
https://school.programmers.co.kr/learn/courses/30/lessons/132201이 문제는 CASE문을 사용하는 문제이다. CASE문을 사용할 때 꼭 별칭을 붙여 주어야 출력 결과와 동일하게 나온다.
https://school.programmers.co.kr/learn/courses/30/lessons/151136이 문제는 소수점 첫째 자리에서 반올림 한 결과값을 출력하는 문제이다. 즉, ROUND 함수를 사용해야 한다. ROUND(숫자, 0)은 소수점 1
https://school.programmers.co.kr/learn/courses/30/lessons/132203DATE_FORMAT을 출력 형식에 맞게 설정해 주어야 한다.
https://school.programmers.co.kr/learn/courses/30/lessons/133025
https://school.programmers.co.kr/learn/courses/30/lessons/133024
https://school.programmers.co.kr/learn/courses/30/lessons/131112
https://school.programmers.co.kr/learn/courses/30/lessons/131536
https://school.programmers.co.kr/learn/courses/30/lessons/273711이 문제는 아이템의 희귀도가 'RARE'인 아이템들의 모든 다음 업그레이드 아이템의 ID, 이름, 희귀도를 구하는 문제이다. 다음 업그레이드 아이
https://school.programmers.co.kr/learn/courses/30/lessons/299305부모 id로 그룹을 지은 후, 이 부모 id가 id와 같은지를 확인해 주어야 한다. 즉, 각 id별로 PARENT_ID로 그룹 한 결과에서의 개수
https://school.programmers.co.kr/learn/courses/30/lessons/299307
https://school.programmers.co.kr/learn/courses/30/lessons/59038
https://school.programmers.co.kr/learn/courses/30/lessons/59408DISTINCT 함수를 써 주어야 한다. 이 때, NAME 앞에 붙여서 중복을 제거한 후 count를 해 주어야 한다.
https://school.programmers.co.kr/learn/courses/30/lessons/133027이 문제는 7월 아이스크림 총 주문량을 구한 후 상반기 아이스크림 총 주문량과 join해 주면 되는 문제이다. 이 때, 단순히 GROUP BY를
https://school.programmers.co.kr/learn/courses/30/lessons/59043
https://school.programmers.co.kr/learn/courses/30/lessons/59044LEFT JOIN을 써 주면 되는 문제이다. 입양을 간 동물은 ANIMAL_OUTS 테이블에서의 값이 NULL임을 이용해 주면 된다.
https://school.programmers.co.kr/learn/courses/30/lessons/59045
https://school.programmers.co.kr/learn/courses/30/lessons/273710부모 정보가 NULL인 ITEM_ID를 ITEM_TREE에서 가져와 ITEM_INFO에서의 ITEM_ID와 JOIN해 주어야 한다.
https://school.programmers.co.kr/learn/courses/30/lessons/12918character로 비교하기 때문에 if문의 숫자도 char형으로 넣어 주어야 한다.
\[https://school.programmers.co.kr/learn/courses/30/lessons/155651처음에는 최대한 많은 회의 시간을 배정하는 greedy 문제와 같이 '퇴실 시간'을 기준으로 정렬했었다. 하지만, 이것은 특정 시간 이후에 시
https://www.acmicpc.net/problem/12891이 코드는 코드의 로직 상 문제는 없으나, 시간 초과가 떴다. 모든 문자열을 다 비교해보기 때문인 것 같다ㅠㅠ 인터넷을 찾아보니 '슬라이딩 윈도우'로 풀어야 한다고 한다.
https://www.acmicpc.net/problem/2577배열의 index에 각 숫자의 번호를 넣고, 1씩 증가시켜주면 되는 문제이다. 이 문제에서는 형 변환이 중요하다. A,B,C를 곱한 값을 String으로 변환해 length를 구해주고, 또 cha
https://www.acmicpc.net/problem/2577숫자를 입력받으면서 나누고, 나눈 나머지를 배열에 저장해 주면 된다. 나는 단순히 42의 나머지의 개수라서 배열의 크기도 42로 설정해 주었다(나머지가 42를 넘어가는 경우는 없기 때문)
https://school.programmers.co.kr/learn/courses/30/lessons/132265이 코드는 index값을 이용하여 형과 동생의 hashMap에 토핑을 넣고, map의 개수를 다져 개수를 구해주도록 한 코드이다. 하지만, 시간
https://school.programmers.co.kr/learn/courses/30/lessons/138476HashMap에 각각 수확한 귤 크기, 크기의 개수를 저장한 후 value를 중심으로 정렬 해 준다. 이후, sum값이 k값보다 작을 때 까지 더
https://school.programmers.co.kr/learn/courses/30/lessons/131533sum과 같은 집계함수를 사용할 때에는 group by를 사용해 주어야 한다.
https://school.programmers.co.kr/learn/courses/30/lessons/181932
https://school.programmers.co.kr/learn/courses/30/lessons/181931
https://school.programmers.co.kr/learn/courses/30/lessons/181928
queriesi면 j가 항상 2로 고정이므로 0번째 방을 i로, 1번째 방을 j로 해서 위치를 변경해 준 후 변경된 배열을 반화낳면 된다.
https://spring.io/projects/spring-security Token 토큰 : 내가 이 API를 써도 되는지에 대한 인증 리액트 서버에서 API 서버로 요청->요청은 웹사이트이기 때문에 누구나 할 수 있음. 이게 많아지면 디도스가 됨. 인증되지 않은
https://school.programmers.co.kr/learn/courses/30/lessons/181923for문을 돌릴 때 마다 새로운 ArrayList를 만들어 주어야 한다.
https://school.programmers.co.kr/learn/courses/30/lessons/181927처음에는 배열이기 때문에 습관적으로 for문에 넣었는데, 그냥 마지막 원소와 그 앞의 원소만 비교해 주면 되기 때문에 index로 바로 접근해 주
https://school.programmers.co.kr/learn/courses/30/lessons/120835?language=java우선 answer 배열을 1로 초기화 해 준다. answer는 우선순위를 담는 배열인데, 우선순위는 자연수로 이루어져 있
https://school.programmers.co.kr/learn/courses/30/lessons/120808
https://school.programmers.co.kr/learn/courses/30/lessons/181918스택을 써서 최상단 요소를 가지고 와 비교하면 쉽게 풀리는 문제이다.
https://school.programmers.co.kr/learn/courses/30/lessons/181919처음에는 n까지의 모든 수에 대한 정답을 구해야 하는 줄 알고 for문을 썼었다. 하지만, 그냥 n을 이용해서 해 주면 되는 간단한 문제였다. 여
https://school.programmers.co.kr/learn/courses/30/lessons/181916빡구현 문제가 이런게 아닐까 싶다.. 문제 자체는 복잡하지 않지만, 구현 코드가 길다.. 모든 조건을 따져 주어야 하기 때문인 것 같다.우선, 나
https://school.programmers.co.kr/learn/courses/30/lessons/181913substring을 이용하여 문자열을 앞, 중간, 뒤로 나눈 후 합쳐주면 되는 것이다. 이 때, 중간 문자열을 역순으로 reverse해 주면 된다
https://school.programmers.co.kr/learn/courses/30/lessons/120818이 문제는 if문의 순서를 생각해 주어야 하는 문제이다. 초반에는 가장 작은 금액부터 if문을 걸어 주었는데, 그렇게 되면 50만원 이상인 경우에
https://www.acmicpc.net/problem/15654
https://school.programmers.co.kr/learn/courses/30/lessons/120843처음에는 for문을 배열의 길이만큼 반복한 후, for문 안에서 공을 던진 횟수가 k가 되면 for문을 탈출하도록 작성했었다. 하지만, 이렇게 하
https://school.programmers.co.kr/learn/courses/30/lessons/120826단순히 replace를 사용하여 letter값을 빈 문자열로 변경해 주면 끝나는 문제이다. 처음에는 charAt을 이용하여 현재 문자랑 lette
https://school.programmers.co.kr/learn/courses/30/lessons/120837처음에는 while문 통해 구해주려고 했는데, 그냥 한 줄로 풀 수 있을 것 같아서 다시 풀어보았다.우선, 가장 큰 것부터 걸러주어야 한다. 5,
https://school.programmers.co.kr/learn/courses/30/lessons/120840처음에는 아래와 같이 풀었다. 하지만, 이렇게 풀면 오버플로우가 발생해 일부 테스트 케이스를 통과하지 못하는 경우가 발생하였다. 이것을 방지하기
https://school.programmers.co.kr/learn/courses/30/lessons/181921
https://school.programmers.co.kr/learn/courses/30/lessons/12906
https://school.programmers.co.kr/learn/courses/30/lessons/181900
https://school.programmers.co.kr/learn/courses/30/lessons/181902아스키 코드 값을 이용하여 index를 설정해 주었다. 이 때, 대문자와 소문자 사이에 다른 값들이 들어 있는 것을 주의해서 해 주어야 한다.
https://school.programmers.co.kr/learn/courses/30/lessons/181898처음 코드는 for문을 0부터 검사하기 때문에 조금 더 오래 걸린다. for문의 시작을 조건에 맞는 index 이후부터 검사해주면 검사 범위가 더
https://school.programmers.co.kr/learn/courses/30/lessons/120844문자열의 내용을 비교할 때는 equals 메소드를 사용해 주어야 한다.실수로 창을 꺼버리는 바람에 몇 점 짜리 문제인지는 보지 못하였다ㅠㅠ
https://school.programmers.co.kr/learn/courses/30/lessons/120846for문을 n까지 반복시켜 n이하의 모든 숫자를 탐색한다. 이후, for문을 한 번 더 돌려 n에 대한 모든 숫자를 탐색하고, i가 j로 나누어지
https://school.programmers.co.kr/learn/courses/30/lessons/120848for문을 이용해서 n까지의 팩토리얼 수를 구한 후, 조건에 맞다면 return을 해 주었다. 하지만, 이 문제는 n보다 작은 수에서 팩토리얼 값
https://school.programmers.co.kr/learn/courses/30/lessons/120852for문을 이용해서 i가 2(가장 작은 소수)일 때 부터 n까지 증가시키며 나눈다. 이 때, n을 i로 나눈 나머지가 0일 때 까지 가장 작은 수
\[https://school.programmers.co.kr/learn/courses/30/lessons/181893이 문제는 index에서의 반례를 찾는 데 시간이 많이 걸렸다. ArrayList에서 요소를 제거하면 list의 index 값에도 변화가 생기
https://school.programmers.co.kr/learn/courses/30/lessons/120890최소값을 update하는 로직을 추가해 주지 않아서 시간이 조금 걸렸었다. 초반에 최솟값과 절대값을 구했기 때문에, 조건에 부합하는 경우 이 두
https://school.programmers.co.kr/learn/courses/30/lessons/120862else if문을 써버리면 if문의 조건이 충족했을 때 다음 if문으로 넘어가지 않는다. 그래서 else if문이 아닌, if문을 3개를 써 주어
https://school.programmers.co.kr/learn/courses/30/lessons/181880초반에 문제를 제대로 이해하지 않아서 각 요소를 나누는 최대 횟수를 구하면 되는줄 알았다(총 배열을 몇 번 나눠야 모든 요소가 1이 되는지를 구하
https://school.programmers.co.kr/learn/courses/30/lessons/120892단순하게 i번째가 4의 배수일 경우에만 if문이 실행되도록 작성하였다. 하지만, for문의 i값을 통해 일치하는 요소에만 접근할 수 있을 것 같다
https://school.programmers.co.kr/learn/courses/30/lessons/120894 문자열에서 각 문자를 String값의 숫자로 변환한 후 String값을 정수로 변환해서 풀어주었다. 하지만, 런타임 에러가 발생하였다. 처음 코드
https://school.programmers.co.kr/learn/courses/30/lessons/181872myString.length()-pat.length()까지 for문을 반복하여 substring으로 문자열을 잘라준다. 이 때, 잘린 문자열의 길
https://school.programmers.co.kr/learn/courses/30/lessons/181867이 문제는 단순히 split("x")로만 풀어주면 정답이 아니다. 첫 번째 케이스에서 보면 알 수 있듯, 마지막에 빈 배열을 추가해 주어야 하기
https://school.programmers.co.kr/learn/courses/30/lessons/120585for문으로 배열의 요소를 반복해서 풀 수도 있는데, 나는 그렇게 풀고 싶지 않았다. 배열을 정렬한 후 index값을 고려해서 하고 싶었다.ind
https://school.programmers.co.kr/learn/courses/30/lessons/181851총 두 가지 방법으로 풀어 보았다. compare메소드를 사용해서 정렬한 코드인 첫 번째 코드보다 comparingInt를 이용하여 작성한 코드가
https://school.programmers.co.kr/learn/courses/30/lessons/181847이 숫자는 앞에 있는 0을 제거하는 문제이다. 처음에는 문자열의 replace, substring을 사용해서 문제를 풀었었는데, 그냥 string
https://www.acmicpc.net/problem/1743이 문제는 dfs를 이용하여 푸는 문제이다. 음식물 쓰레기가 있다고 가정한 후, 상하좌우를 비교하여 연속된 곳에 있으면 그 곳을 찾으면 된다.
\[https://school.programmers.co.kr/learn/courses/30/lessons/181838반례를 찾는 것에서 살짝 시간 소요가 되었다.
https://school.programmers.co.kr/learn/courses/30/lessons/181830
https://school.programmers.co.kr/learn/courses/30/lessons/181832우선, n이 4일때를 기준으로 문제를 이해해 보자.첫 번째 for문을 보면 같은 행에서 시작을 한다. 즉, 0번째 줄에서 시작하는 것이다. 0번째
https://www.acmicpc.net/problem/1913319 2 3 8 1 4 7 6 5 2 2위의 반례를 찾지 못해서 시간이 많이 소요되었다. 위의 반례의 경우에는 while문이 돌기 전의 조건(arrrowStart = num++;의 조건)이므로
https://school.programmers.co.kr/learn/courses/30/lessons/181836각 문자를 k번 반복해 새로운 문자열을 만들고, 그 새로운 문자열을 k번 반복해 ArrayList에 넣어 주면 된다.
https://school.programmers.co.kr/learn/courses/30/lessons/120909Math.sqrt()는 return type이 double이다. 이것을 몰라서 테스트 케이스 7,8번 통과를 못했었다. 제곱근의 값을 정수로 강제
https://school.programmers.co.kr/learn/courses/30/lessons/120880Comparator를 사용하면 쉽게 문제가 풀린다. compare메소드 안에 diffA와 diffB를 선언해준 후 문제를 풀면 된다. 이 문제를
\[https://school.programmers.co.kr/learn/courses/30/lessons/120863문자열에 x가 들어간다면 그 문자열은 x항인 것이다. 만약, 문자열이랑 x와 같다면 계수가 1인 것이다. 또한, 문자가 isDigit이면, 상
https://school.programmers.co.kr/learn/courses/30/lessons/42579HashMap 안에 ArrayList를 만드는 것 까지는 괜찮았지만, HashMap을 value값을 기준으로 정렬 하는 것이 어려웠다.우선, Key
https://school.programmers.co.kr/learn/courses/30/lessons/92334
Java의 Map 인터페이스에서 제공하는 중첩 인터페이스맵의 Key, Value 쌍을 쉽게 다루기 위해 사용주로 Map의 entrySet() 메소드와 함께 사용하여 맵의 모든 엔트리를 반복할 때 유용
https://school.programmers.co.kr/learn/courses/30/lessons/42746