일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | |
7 | 8 | 9 | 10 | 11 | 12 | 13 |
14 | 15 | 16 | 17 | 18 | 19 | 20 |
21 | 22 | 23 | 24 | 25 | 26 | 27 |
28 | 29 | 30 | 31 |
- 프로그래머스
- HashMap
- dp
- 백준 1600번 말이 되고픈 원숭이
- 프로그래머스 자바
- 백준 2206번 벽 부수고 이동하기 G3
- 백준 8979번 올림픽 S5 자바
- append
- 스프링 다중프로필
- StringBuilder
- HashSet
- 포인트 컷
- 스프링 on-profile
- 백준 1240번 노드사이의 거리
- replace()
- 서브모듈 yml
- 전위 중위 후위
- hash
- 백준 11725번 트리의 부모 찾기
- Stack
- 백준 1967번 트리의 지름 G4 자바
- StringTokenizer
- kotlin
- 백준 2589번 보물섬 G5
- 코틀린기초
- Java
- 프로그래머스 java
- 백준 2660번 회장뽑기 G5
- map
- toUpperCase
- Today
- Total
목록분류 전체보기 (141)
말하는 컴공감자의 텃밭
문제를 처음 읽었을때. 정답률 17%도 보고 이게 뭐지 생각했다. A와 B가 같아지고 싶은데, 소수로 빼고 더하고만 가능하다. 조작 횟수를 출력한다 만약 소수로 같아지게 할 수 없다면 -1을 출력한다. 단 최대 값을 원하는 문제이다. 예를 들어 A 가 5 B가 10라면. A에 +2 또는 +3을하고, B에 -3 또는 -2. 아니면 한쪽에서 +2, +3, -2 -3 하는 방법이 있다. 모두 operation은 2이므로 답은 2가 된다. 소수가 눈에 띄어서 따로 함수로 풀었으나, 웬걸 이거 최대값이니까 2로 최대한 빼주고 더해주면 되는 문제였다. 어? 쉽네 하고 슥슥 작성했다. HTML 삽입 미리보기할 수 없는 소스 46개에서 42개가 맞아서 음? 했다. 반례가 있나~ 해서 gpt 도움을 받을라 했는데 아무튼..
가장 높은곳에서 블럭을 옮겨, 낮은 곳으로 옮기는 문제이다. 최종적으로는 정해진 횟수만큼 움직여서 가장 높은곳과 낮은곳의 차이점을 출력하면 되는 문제다. A가 최고점이므로, B로 이동. A가 최고점이므로 C에 이동, C`에 이동해도 무방하다. 가로는 100으로 고정되어 있으며, 10번의 tc가 주어진다. 점프 회수는 1~1000이고, 모두 동등해지면 더이상의 평탄화는 불가능하므로, 그때 상황에 따라 1또는 0을 출력한다. ex) 666766 의 경우 7이 높긴하나 더 옮길 수 없으므로 1 출력. 보자마자 단순 구현이라는 생각이 들었고, 가장 높은곳은 -1, 낮은곳은 +1 * 주어진 횟수로 풀었다. HTML 삽입 미리보기할 수 없는 소스 간단쓰.. 이런건 너무 좋자나
문제가 level 2치고는 간단해 보였다. 구현 문제자나~~ 시간 복잡도만 고려하면 되겠다 싶었다. 일단 문제 그대로 읽으면서 구현해봤다. 뒤에 큰수를 찾으면 max에 저장해두고, 해당값을 answer[i]에 넣는다. max가 본인이 되는 경우를 제외하면 그 사잇값은 max가 뒷큰수가 된다. 찾지 못한경우 boolean으로 구분해 -1을 넣어주었다. HTML 삽입 미리보기할 수 없는 소스 하지만 입력값이 1,000,000 까지기에 n^2은 무리였나보다. 나머지는 맞았으나, tc 20~23번에서 시간 초과가 발생했다. 하지만 다른 방법은 안떠오르고,, 어떻게 최적화 할까 하다가 앞부터 찾으니 큰 수를 하나하나 다 찾아야하는게 오래걸린다 싶었다. 뒤에서 부터 탐색하며, 뒤에 숫자의 뒷큰수에 따라 앞이 정해지..
문제는 간단하다. 네번째 줄에 주어지는 숫자들이 두번째 줄에 주어진 숫자였다면 해당 위치에 1, 아니라면 0을 반환하면 되는 문제다. 다만 입력값 범위가 굉장히 크기에 시간복잡도 O(n) 관리가 필요하다. HTML 삽입 미리보기할 수 없는 소스 초기에 이분탐색을 사용해서 작성한 코드이다, 이분탐색은 하나 하나 탐색하는 방법보다 성능이 좋으므로 해결될거라 생각했다. ㅋㅋㅎ 퇴근하고 더워서 녹은 몸으로 작성해서 틀려도 별 생각이 없었다. 문제를 한번 더 읽고 그냥 당연하게 HashSet으로 작성해버렸다. HTML 삽입 미리보기할 수 없는 소스 간결하고, 배열을 정렬 할 필요도 없다. 단순히 값이 있는지만 해싱하기 때문에. 시간 복잡도를 비교해보면 이진 검색 방식: 첫 번째 배열 정렬(N_arr): O(N l..
처음에 봤을때 이거 그냥 배열로도 되겠는데,, 하다가 문제가 큐로 풀어주세요~ 하는거 같아서 메소드 찾아가면서 풀어봤다. 먼저 n w L 이 주어진다. n -> 트럭 수, w -> 다리 길이, L -> 최대 하중 모든 트럭이 다리를 지나가는 시간을 계산하는 문제고, 다리 하중보다 높으면 트럭을 올라갈 수 없다. 또한 1초에 1칸씩 이동하는 개념을 갖고있다. 간단하게 생각했을때 트럭이 없어질때까지 반복해서, 다리에 올릴 수 있으면 올리고, 하중때문에 못올린다면 0값을 넣어서 밀어 넣는 식으로 생각했다. 내릴때는 0번째 위치면 내리고, 아닌 친구들은 idx를 1씩 빼면서 로케이션을 바꿔주면 되겠다 했다. 근데 Queue를 써버리면 그냥 문제 흐름 그대로 FIFO(선입선출)기 때문에 인덱스 관리를 할 필요가 ..
보자마자 Split 쓰거나 CharAt으로 공백 구분하면 되겠는데 했다. 양쪽 공백은 trim으로 없앤 후 배열에 넣어서 크기를 내면 답이겠네~ 했다. HTML 삽입 미리보기할 수 없는 소스 charAt으로도 간단했는데 다른사람은 뭐로 풀었다 검색해보다가 StringTokenizer이라는 메소드를 찾았다. 문자열을 구분자로 쪼개주는 클래스인데 token으로 구분짓는다고 한다. >> StringTokenizer HTML 삽입 미리보기할 수 없는 소스 이런식으로 작성하면 Hello how are you today? 이렇게 쪼개준다. 물론 복잡한걸 사용하려면 split()를 사용하는게 좋다고 한다. GPT한테 슥 물어보니 StringTokenizer(String str, String delim) 토큰화할 지정..
스택 메소드 구현 문제이다. 근데 집중을 안했는지 정수가 아닌경우도 입력받는걸로 이해해서 혼자 정수처리하다 오래걸려버렸다.. 그냥 단순하게 스택을 구현하면 되는 문제였다. 프로그래머스로 풀다가 오랜만에 이클립스 IDE 써보니까 어색하고 함수 구분하는것도 에베베 으베베가 되었다. 백준이랑 SW Expert로 많이 해봐야겠다 호후호 HTML 삽입 미리보기할 수 없는 소스
처음엔 간단하게 생각했다. 초기값을 정하고, 연산 경우의 수를 따져서 간단하게 로직을 작성했었다. 가능한 큰 수인 3으로 나누는 경우가 좋을 것이라 판단했고, -1의 경우도 있기에 X % 3 == 1이면 2의 배수여도 먼저 -1 후 3을 나누는게 나을 거라고 판단했었다. X가 10이라면 10 -> 5 -> 4 -> 2-> 1 10 -> 9 -> 3 -> 1 이런 차이도 있기 때문에 저런 로직을 추가했었다. HTML 삽입 미리보기할 수 없는 소스 가볍게 틀려주면서 반례를 고민해 봤는데 700 -> 699 -> 233 -> 232 -> 231 -> 77 -> 76 -> 75 -> 25 -> 24 -> 8 -> 4 -> 3 -> 1 700 -> 350 -> 175 -> 174 -> 58 -> 29 -> 28 ..
원하는 목표가 정해진 배열 goal이 주어지고, 단어들이 담긴 배열 두가지가 주어진다. 원하는 문장을 덱 2가지에서 순서대로 뽑아서 만들 수 있다면 Yes 아니면 No 출력하면 된다. 간단쓰~ HTML 삽입 미리보기할 수 없는 소스
https://swexpertacademy.com/main/code/problem/problemDetail.do HTML 삽입 미리보기할 수 없는 소스 아파트 높이가 주어지고, 양쪽 조망권이 확보되는 세대 수를 찾는 문제이다. input이 프로그래머스와 다르게 공백으로 주어지기 때문에 각각 스캐너로 받아주고, 아파트 높이는 배열로 넣어주어 반복문을 활용했다. 양쪽 +-2보다 높다면 조망권이 있다는 얘기고, 그 다음으로 높은 아파트를 빼주면 조망권이 확보된 아파트를 찾을 수 있다. 찾은 아파트 주변 +- 2에는 조망권이 있을 수 없기에 +2를 통해 불필요한 연산을 빼주었다. HTML 삽입 미리보기할 수 없는 소스