본문 바로가기
728x90

전체 글348

[프로그래머스] Lv.1 비밀지도 - Python https://programmers.co.kr/learn/courses/30/lessons/17681 코딩테스트 연습 - [1차] 비밀지도 비밀지도 네오는 평소 프로도가 비상금을 숨겨놓는 장소를 알려줄 비밀지도를 손에 넣었다. 그런데 이 비밀지도는 숫자로 암호화되어 있어 위치를 확인하기 위해서는 암호를 해독해야 한다. 다 programmers.co.kr 생각 정수를 2진수로 바꾸기 : bin(x) 2진수 맨앞이 0인 경우들을 생각해서 n자리 0으로 채우기 : .zfill(n) 둘 다 0이면 빈 칸 아니면 벽 코드 def solution(n, arr1, arr2): answer = [] for i in range(n): # 2진수로 바꾸기 / n자리 0으로 채우기 a = bin(arr1[i])[2:].zf.. 2022. 6. 30.
[프로그래머스] Lv.2 뉴스클러스터링 - Python https://programmers.co.kr/learn/courses/30/lessons/17677 코딩테스트 연습 - [1차] 뉴스 클러스터링 뉴스 클러스터링 여러 언론사에서 쏟아지는 뉴스, 특히 속보성 뉴스를 보면 비슷비슷한 제목의 기사가 많아 정작 필요한 기사를 찾기가 어렵다. Daum 뉴스의 개발 업무를 맡게 된 신입사원 튜브 programmers.co.kr 생각 다중집합에서 영어 대문자, 소문자 구분하지 않는다 했으니 모두 대문자로 바꾸기 다중집합 만들면서 영어로만 되어있는게 아니면 버리기 : .isalpha() 둘 다 공집합이면 1*65536 둘 중 하나라도 공집합이면 교집합이 없으므로 0 교집합/합집합 구하는 방법 1. 교집합 구하기 원소에 중복을 허용하기에 set() 사용할 수 없음 하나.. 2022. 6. 30.
[프로그래머스] Lv.3 입국심사 - Python https://programmers.co.kr/learn/courses/30/lessons/43238 코딩테스트 연습 - 입국심사 n명이 입국심사를 위해 줄을 서서 기다리고 있습니다. 각 입국심사대에 있는 심사관마다 심사하는데 걸리는 시간은 다릅니다. 처음에 모든 심사대는 비어있습니다. 한 심사대에서는 동시에 한 programmers.co.kr 생각 시간이 주어질 때 심사 받을 수 있는 사람 수 구하기 시간 // 심사에 걸리는 시간 시간안에 정해진 인원을 다 처리하지 못한다면 시간 늘리기 이분 탐색 코드 # 시간이 num일 때 심사 받을 수 있는 사람 수 구하기 def cnt(num,times): c = 0 for t in times: # 각 입국심사대에서 시간 내에 처리 가능한 사람 수 c += num.. 2022. 6. 30.
[백준] 14500. 테트로미노 - Python https://www.acmicpc.net/problem/14500 14500번: 테트로미노 폴리오미노란 크기가 1×1인 정사각형을 여러 개 이어서 붙인 도형이며, 다음과 같은 조건을 만족해야 한다. 정사각형은 서로 겹치면 안 된다. 도형은 모두 연결되어 있어야 한다. 정사각형의 변 www.acmicpc.net 생각1 'ㅗ' 모양은 dfs 이동으로 할 수 없으니 따로 생각 나머지 모양은 dfs 이동으로 구현 위로, 오른쪽으로, 아래쪽으로만 이동 왼쪽은 이동할 필요 없음 -> 이전에 나온 모양이 나올 수 있으니 코드1 from sys import stdin input = stdin.readline # 세로, 가로 N, M = map(int,input().split()) paper = [list(map(in.. 2022. 6. 29.
[백준] 14499. 주사위 굴리기 - Python https://www.acmicpc.net/problem/14499 14499번: 주사위 굴리기 첫째 줄에 지도의 세로 크기 N, 가로 크기 M (1 ≤ N, M ≤ 20), 주사위를 놓은 곳의 좌표 x, y(0 ≤ x ≤ N-1, 0 ≤ y ≤ M-1), 그리고 명령의 개수 K (1 ≤ K ≤ 1,000)가 주어진다. 둘째 줄부터 N개의 줄에 지 www.acmicpc.net 생각 주사위를 굴렸을 때 인덱스의 변화를 확인 주사위 값 변화 시키고 칸 숫자 확인 코드 from sys import stdin import copy input = stdin.readline # 지도의 세로,가로 / 주사위를 놓은 곳의 좌표 / 명령의 개수 N, M, x, y, K = map(int,input().split()) b.. 2022. 6. 29.
[백준] 12865. 평범한 배낭 - Python https://www.acmicpc.net/problem/12865 12865번: 평범한 배낭 첫 줄에 물품의 수 N(1 ≤ N ≤ 100)과 준서가 버틸 수 있는 무게 K(1 ≤ K ≤ 100,000)가 주어진다. 두 번째 줄부터 N개의 줄에 거쳐 각 물건의 무게 W(1 ≤ W ≤ 100,000)와 해당 물건의 가치 V(0 ≤ V ≤ 1,000) www.acmicpc.net 생각 DP 거꾸로 계산 가치 최대치부터 이 물건을 담는 것과 담지 않는 것중 가치가 큰 거 찾기 코드 # 물품의 수, 버틸 수 있는 무게 n, k = map(int, input().split()) # 여행에 필요하다고 생각하는 물건들 items = [list(map(int,input().split())) for _ in range(.. 2022. 6. 28.
반응형