목록알고리즘 (71)
우당탕탕 개발일지
💡문제 링크 Candidate | Softeer Assessment UI softeer.ai 💡문제 분석 요약 너무 쉬움 💡알고리즘 설계 너무 쉬움 💡코드 import sys a = input() if a == "1 2 3 4 5 6 7 8": print("ascending") elif a == "8 7 6 5 4 3 2 1": print("descending") else: print("mixed") 💡 느낀점 or 기억할정보 1분만에 풀음
💡문제 링크 Candidate | Softeer Assessment UI softeer.ai 💡문제 분석 요약 1. 전광판에 한 자리 수부터 다섯 자리 수까지 입력 가능하다. 2. 전광판에 표시된 숫자를 A에서 B로 바꿀 때 스위치를 최소한 몇 번 눌러야하는지 구하라.(A, B는 0으로 시작하지 않고, 서로 다름) 3. 전광판에 표시된 숫자를 A에서 B로 바꾸는 과정을 T번 반복(1
💡문제 링크 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 💡문제 분석 요약 배열 arr은 0과 9 사이의 숫자로 이루어져 있음배열 arr에서 숫자가 연속적으로 나타나는 경우, 하나만 남기고 모두 제거 💡알고리즘 설계 입력값: arr 출력값: 중복값이 없는 배열1.리턴할 배열 answer을 만든다.2. arr의 원소들에 대해 반복문 돌리기3. arr의 원소가 answer의 맨 마지막 원소와 같지 않은 경우에만 answer에 arr원소 넣기 💡코드 def solution(arr): answer = [arr[0]] for a in arr[1:]: if ans..
💡문제 링크 14502번: 연구소 인체에 치명적인 바이러스를 연구하던 연구소에서 바이러스가 유출되었다. 다행히 바이러스는 아직 퍼지지 않았고, 바이러스의 확산을 막기 위해서 연구소에 벽을 세우려고 한다. 연구소는 크 www.acmicpc.net 💡문제 분석 요약 1. 연구실 지도에서 0은 안전영역, 1은 벽, 2는 바이러스 2. 바이러스(2)는 상하좌우로 퍼진다(1을 만나기 전까지 계속 퍼짐) 3. 벽(1)을 3개 세워서 바이러스의 확산을 최대한 막야아 한다. 즉, 안전영역이 최대가 되어야 한다. 4. 안전영역 최댓값 출력 💡알고리즘 설계 1. n, m, 지도를 입력받는다. 지도를 이중 리스트로 받는다. 2. DFS(깊이 우선 탐색)를 이용해서 바이러스를 상하좌우로 전파시키는 virus 함수를 만든다 3..
💡문제 링크 18352번: 특정 거리의 도시 찾기 첫째 줄에 도시의 개수 N, 도로의 개수 M, 거리 정보 K, 출발 도시의 번호 X가 주어진다. (2 ≤ N ≤ 300,000, 1 ≤ M ≤ 1,000,000, 1 ≤ K ≤ 300,000, 1 ≤ X ≤ N) 둘째 줄부터 M개의 줄에 걸쳐서 두 개 www.acmicpc.net 💡문제 분석 요약 N개의 노드가 M개의 간선으로 이어져 있다. X노드에서 시작해서 간선 K개를 지나 도달할 수 있는 노드를 모두 출력하는 문제 즉 최단거리가 K인 모든 노드를 출력하는 문제(한 줄에 하나씩, 오름차순으로)최단거리가 K인 노드가 없으면 -1을 출력한다 💡알고리즘 설계 1. n, m, x, k를 입력받는다. 2. 입력받은 간선정보를 graph 리스트에 넣는다. 3. ..
💡문제 링크 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 💡문제 분석 요약 옷의 조합의 개수를 구하는 문제 중복 사용 불가능 옷을 최소 하나 이상 선택해야 해 💡알고리즘 설계 예를 들어 옷의 종류가 상의 하의만 있고, 상의가 3개 하의가 4개 있을 경우 만들어낼 수 있는 옷의 조합은 (3+1)*(4+1) - 1 = 19가지이다. 따라서 옷의 종류별 옷이 뭐가 있는지 파악할 수 있도록 딕셔너리를 만들고, 딕셔너리의 길이를 구해서 각 종류별로 옷이 몇 개 있는지 파악한다 그다음에 곱셈을 통해 조합의 개수를 구한다. 💡코드 def solution(clothe..