Programmers / 기지국 설치 / Python
·
코딩테스트(프로그래머스 & 백준)/프로그래머스-Python
*문제 출처는 프로그래머스에 있습니다.  문제 제목: 기지국 설치 (3단계)문제 사이트: https://school.programmers.co.kr/learn/courses/30/lessons/12979 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr  문제 설명   나의 풀이 def solution(n, stations, w): answer = 0 current_pos = 1 # 현재 커버된 마지막 위치 spread = 2 * w + 1 # 각 기지국이 커버하는 범위 for station in stations: start..
Programmers / 2개 이하로 다른 비트 / Python
·
코딩테스트(프로그래머스 & 백준)/프로그래머스-Python
*문제 출처는 프로그래머스에 있습니다.  문제 제목: 2개 이하로 다른 비트 (2단계)문제 사이트: https://school.programmers.co.kr/learn/courses/30/lessons/77885 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr  문제 설명   나의 풀이 def count_different_bits(a, b): # XOR 연산을 통해 서로 다른 비트를 찾는다 xor_result = a ^ b # XOR 결과에서 1의 개수를 세면 서로 다른 비트의 개수를 구할 수 있다 different_bits_co..
Programmers / 숫자 게임 / Python
·
코딩테스트(프로그래머스 & 백준)/프로그래머스-Python
*문제 출처는 프로그래머스에 있습니다.  문제 제목: 숫자 게임 (3단계)문제 사이트: https://school.programmers.co.kr/learn/courses/30/lessons/12987 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr  문제 설명   나의 풀이 def solution(A, B): answer = 0 A.sort(reverse = True) B.sort(reverse = True) for i in A: if i >= B[0]: continue else: ..
백준 / DFS와 BFS / 1260번 / Python
·
코딩테스트(프로그래머스 & 백준)/백준-Python
*문제 출처는 백준에 있습니다. 문제 제목: DFS와 BFS / 1260번 (실버 2단계)문제 사이트: https://www.acmicpc.net/problem/1260  문제 설명   나의 풀이 from collections import dequedef bfs(graph, visit, start): q = deque([start]) visit[start] = True while q: x = q.popleft() print(x, end = " ") for i in graph[x]: if not visit[i]: q.append(i) visit[i] = Truedef dfs(gra..
백준 / 문자열 교환 / 1522번 / Python
·
코딩테스트(프로그래머스 & 백준)/백준-Python
*문제 출처는 백준에 있습니다. 문제 제목: 문자열 교환 / 1522번 (실버 1단계)문제 사이트: https://www.acmicpc.net/problem/1522  문제 설명   나의 풀이 S = input()def min_a(word):    # 처음 a의 개수    total_a = word.count('a')    # 원형이라고 했으니깐 두 문자열을 붙여준다.    ac = word + word    # 원형 문자열에서 a의 개수를 검사    current_a = ac[:total_a].count('a')    max_a = current_a # a가 가장 많을 때랑 비교할 변수다    for i in range(1, len(word)):        if ac[i - 1] == 'a':    ..
백준 / 국회의원 선거 / 1417번 / Python
·
코딩테스트(프로그래머스 & 백준)/백준-Python
*문제 출처는 백준에 있습니다. 문제 제목: 국회의원 선거 / 1417번 (실버 5단계)문제 사이트: https://www.acmicpc.net/problem/1417  문제 설명   나의 풀이 N = int(input())som = int(input())lis = []count = 0for _ in range(N - 1): person = int(input()) lis.append(person)lis.sort(reverse = True)if N == 1: print(0)else: while lis[0] >= som: som += 1 lis[0] -= 1 count += 1 lis.sort(reverse = True) print..
백준 / 방 번호 / 1475번 / Python
·
코딩테스트(프로그래머스 & 백준)/백준-Python
*문제 출처는 백준에 있습니다. 문제 제목: 방 번호 / 1475번 (실버 5단계)문제 사이트: https://www.acmicpc.net/problem/1475  문제 설명   나의 풀이 N = int(input())dic = {i : 0 for i in range(10)}N = list(str(N))for i in N:    if i == '6' or i == '9':        dic[6] += 1    else:        dic[int(i)] += 1if dic[6] % 2 != 0:    dic[6] = dic[6] // 2 + 1else:    dic[6] = dic[6] // 2print(max(dic.values()))※ 알아야 할 것 딕셔너리에서 value의 최대 값을 찾고 싶으면 ..
백준 / 다리 놓기 / 1010번 / Python
·
코딩테스트(프로그래머스 & 백준)/백준-Python
*문제 출처는 백준에 있습니다. 문제 제목: 다리 놓기 / 1010번 (실버 5단계)문제 사이트: https://www.acmicpc.net/problem/1010  문제 설명   나의 풀이 N = int(input())def factorial(n): num = 1 for i in range(1, n + 1): num *= i return numfor _ in range(N): a, b = map(int, input().split()) bridge = factorial(b) // (factorial(a) * factorial(b - a)) print(bridge)※ 알아야 할 것 문제가 조합을 사용해서 푸는 문제이다. 팩토리얼을 하나씩 계산하는 것보다 함수를 ..
백준 / 감소하는 수 / 1038번 / Python
·
코딩테스트(프로그래머스 & 백준)/백준-Python
*문제 출처는 백준에 있습니다. 문제 제목: 감소하는 수 / 1038번 (골드 5단계)문제 사이트: https://www.acmicpc.net/problem/1038  문제 설명   나의 풀이 from itertools import combinationsdef get_decreasing_number(N): decreasing_numbers = [] for length in range(1, 11): for comb in combinations(range(10), length): num_str = ''.join(map(str, sorted(comb, reverse=True))) decreasing_numbers.append(int(num_str)..
Programmers / 연속된 부분 수열의 합 / Python
·
코딩테스트(프로그래머스 & 백준)/프로그래머스-Python
*문제 출처는 프로그래머스에 있습니다.  문제 제목: 연속된 부분 수열의 합 (2단계)문제 사이트: https://school.programmers.co.kr/learn/courses/30/lessons/178870 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr  문제 설명   나의 풀이 def solution(sequence, k): answer = [] idx = 0 if k in sequence: return [sequence.index(k), sequence.index(k)] while idx k: ..
백준 / 소수 / 1312번 / Python
·
코딩테스트(프로그래머스 & 백준)/백준-Python
*문제 출처는 백준에 있습니다. 문제 제목: 소수 / 1312번 (실버 5단계)문제 사이트: https://www.acmicpc.net/problem/1312  문제 설명    나의 풀이 A, B, N = map(int, input().split())remainder = A % Bfor i in range(N): remainder *= 10 digit = remainder // B remainder %= Bprint(digit)※ 알아야 할 것 V = str(A / B)V = V.split('.')print(int(V[1][N - 1])) N이 소숫점 이하 자리수의 길이보다 클 때 인덱스 오류가 발생할 수 있다. 그러므로 소수점을 포함한 자리수를 충분히 계산한 후 필요한 자리 수를 추출해..
Programmers / 단속카메라 / Python
·
코딩테스트(프로그래머스 & 백준)/프로그래머스-Python
*문제 출처는 프로그래머스에 있습니다.  문제 제목: 단속카메라 (3단계)문제 사이트: https://school.programmers.co.kr/learn/courses/30/lessons/42884 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr  문제 설명   나의 풀이 def solution(routes): answer = 0 routes.sort(key = lambda x: x[1]) camera = -30001 for i, j in routes: if camera  진출 지점으로 정렬을하고 위 그림 처럼 처음을 제외..
김치바보
'코딩테스트(프로그래머스 & 백준)' 카테고리의 글 목록 (9 Page)