일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- Queue
- CPU
- 동시성문제
- port
- dns
- 문자열
- CPU bound
- URL
- frontPattern
- springMVC
- 크기가 작은 부분 문자열
- deque
- 2차원 배열 출력
- process
- Split
- Spring
- java
- 문자열 내마음대로 정렬하기
- 십진수 이진수 전환
- stack
- IO bound
- 코딩테스트
- http
- 가장 가까운 단어
- reflection
- DICTIONARY
- green thread
- TCP/IP
- 프로그래머스
- annotation
- Today
- Total
목록코딩테스트 (26)
아무나개발하자
문제 https://school.programmers.co.kr/learn/courses/30/lessons/12950 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이 ''' 리스트 출력 방법 이차원 배열 a가 있다고 가정할때, [[0, 0], [0, 0]] (1) for i in a: # a에서 안쪽 리스트를 꺼냄 for j in i: # 안쪽 리스트에서 요소를 하나씩 꺼냄 print(j, end=' ') (2) for i in range(len(a)): \ for j in range(len(a[i])): print(a[i][j], end=' ') ..
문제 https://school.programmers.co.kr/learn/courses/30/lessons/42587 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이 """ 1. 2 1 3 2 -> A B C D 2. 1 3 2 2 -> B C D A 3. 3 2 2 1 -> C D A B 4. 2 2 1 -> D A B (C) 5. 2 1 -> A B (D) 6. 1 -> B (A) 7. (B) 출력 순서 -> C D A B 우선 순위 [2, 1, 3, 2] -> 3 2 2 1 인텍스 [0, 1, 2, 3] -> 2 3 0 1 문제해결방법 1. 인..
문제 https://school.programmers.co.kr/learn/courses/30/lessons/42747 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이 """ 0 1 3 5 6 문제 해결 방법 (역순으로 citations를 정렬한다.) 1. h는 0부터 하나 하나씩 증가한다. 2. 1번째 : citations값중 h번 이상 인용된거 h_count 3. 2번째 : h_count가 h개 이상인지를 확인한다. 3. max를 찾는다. """ def solution(citations): answer = 0 citations.sort(revers..
문제 https://school.programmers.co.kr/learn/courses/30/lessons/12914 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이 """ 문제 해결 방법 홀수 1 -> 1 (1) 짝수 2 -> 1 1 ,2 (2) 홀수 3 -> 111, 12, 21 (3) 짝수 4 -> 1111, 211 x 3, 22 (5) 홀수 5 -> 11111, 2111 x 4, 221 x 3 (8) 짝수 6 -> 111111, 21111 x 5, 2211 x 6, 222 x1 (13) 홀수 7 -> 1111111, 211111 x 6, 22..
문제 https://school.programmers.co.kr/learn/courses/30/lessons/12906 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이 """ 문제 해결 방법 1. answer 리스트 한개 만듬 2. arr를 for문 돌면서 len(answer) == 0 이면 append 3. len(answer) != 0 -> answer의 마지막원소가 for문의 elem과 같은지 여부 확인 4. 같으면 continue, 다르면 append """ def solution(arr): answer = [] for elem in arr: ..
문제 https://school.programmers.co.kr/learn/courses/30/lessons/147355 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이 """ 문제 해결 방법 1. queue를 하나 만든다. 2. t를 str리스트로 만든다 t_list (예 "1234" -> ["1","2","3","4"]) 3. p의 길이 만큼 t_list를 queue에 담는다. 4. "queue의 길이 >= p의 길이" 인 상황에서 queue의 값과 p의 값을 비교 (문제에서 요구하는 작거나 같으면 ++) 5. queue.popleft() """ ..
문제 https://school.programmers.co.kr/learn/courses/30/lessons/138476 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이 """ 1 : 1 2 : 2 3 : 2 4 : 1 5 : 2 문제 해결 방법 1. 딕셔너리 하나 만들고 tangerine 돌면서 dic안에 값이 있으면 ++, 없으면 1 (이렇게 해야 시간복잡도 지킴) 2. 딕셔너리를 value 크기 순서대로 sort(나는 처음에 max를 찾는걸 생각했는데 이것도 시간 효율에 걸린다, 계속 맥스를 찾는것 보다, 큰 순서대로 정리하는게 더 좋다) 해서 ..
문제 https://school.programmers.co.kr/learn/courses/30/lessons/131127 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이 """ want {"바나나" : 3} {"사과" : 2} {"쌀" : 2} {"돼지고기" : 2} {"냄비" : 1} 1일 : 치킨, 사과, 사과, 바나나, 쌀, 사과, 돼지고기, 바나나, 돼지고기, 쌀 2일 : 사과, 사과, 바나나, 쌀, 사과, 돼지고기, 바나나, 돼지고기, 쌀, 냄비 3일 : 사과, 바나나, 쌀, 사과, 돼지고기, 바나나, 돼지고기, 쌀, 냄비, 바나나 4일 : ..
문제 https://school.programmers.co.kr/learn/courses/30/lessons/12973 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이 ''' 문제 해결 방법 이건 스택으로 풀면 될거 같다 1. 스택 배열을 선언한다. 2. 스택의 len이 2개 이상이면 두개의 문자열 알파벳이 동일한지 비교 3. 같으면 pop 2번, 아니면 그냥 넘어감 ''' def solution(s): answer = -1 stack = [] for elem in s: stack.append(elem) if (len(stack) >= 2): back..
문제 2 * N개의 숫자가 주어졌을 때, 겹치지 않으면서 2개의 원소가 하나의 그룹을 이루도록 하여 총 N개의 그룹을 만드려고 합니다. 적절하게 그룹을 만들어 각 그룹에 있는 원소의 합 중 최댓값이 최소가 되도록 하는 프로그램을 작성해보세요. 예를 들어 N = 2, 주어진 원소가 3, 5, 5, 2 였을 때 그룹을 [5, 5], [3, 2]로 나눈다면 각 그룹에 있는 원소의 합은 순서대로 10, 5 이므로 이 중 최댓값은 10이 됩니다. 만약 그룹을 [3, 5], [5, 2]로 나눈다면 각 그룹에 있는 원소의 합은 순서대로 8, 7 이 되므로 이 중 최댓값은 8이 되며 이보다 최댓값을 더 작게 만들 수는 없습니다. 입력 형식 첫 번째 줄에는 만들어야 하는 그룹의 수를 나타내는 N이 주어집니다. 두 번째 ..