백준 / AC / 5430번 / Python
·
코딩테스트(프로그래머스 & 백준)/백준-Python
*문제 출처는 백준에 있습니다. 문제 제목: AC / 5430번 (골드 5단계)문제 사이트: https://www.acmicpc.net/problem/5430 문제 설명 나의 풀이from collections import deque# 선영이는 주말에 할 일이 없어서 새로운 언어 AC를 만들었다.# AC는 정수 배열에 연산을 하기 위해 만든 언어이다.# 이 언어에는 두 가지 함수 R(뒤집기)과 D(버리기)가 있다.def ac(current_function, n, arr): reverse_flag = False # 뒤집기 여부를 저장하는 플래그 dq = deque(arr) for p in current_function: if p == 'R': rever..
백준 / 단어 정렬 / 1181번 / Python
·
코딩테스트(프로그래머스 & 백준)/백준-Python
*문제 출처는 백준에 있습니다. 문제 제목: 단어 정렬 / 1181번 (실버 5단계)문제 사이트: https://www.acmicpc.net/problem/1181 문제 설명 나의 풀이n = int(input())words = []for _ in range(n): word = input() words.append(word)words = list(set(words))words.sort()words.sort(key = lambda i:len(i))for i in words: print(i)※ 알아야 할 것파이썬 리스트에서 길이 기준으로 정렬할 때 람다를 사용하면 쉽게 정렬할 수 있다.set은 중복되는 단어를 제거하기 위해서 사용했다.
백준 / 평범한 배낭 / 12865번 / Python
·
코딩테스트(프로그래머스 & 백준)/백준-Python
*문제 출처는 백준에 있습니다. 문제 제목: 평범한 배낭 / 12865번 (골드 5단계)문제 사이트: https://www.acmicpc.net/problem/12865 문제 설명 나의 풀이# bp는 배낭을 의미, k는 준서가 담을 수 있는 무게def solution(bp, k): # 가장 가치가 높을 때 max_value = 0 # 가방에서 무게는 오름차순 가치는 내림차순으로 정렬 bp.sort(key=lambda x: (x[0], -x[1])) for i in range(0, len(bp)): current_weight = bp[i][0] current_value = bp[i][1] for j in range(i + 1, len(bp))..
백준 / 곱셈 / 1629번 / Python
·
코딩테스트(프로그래머스 & 백준)/백준-Python
*문제 출처는 백준에 있습니다. 문제 제목: 곱셈 / 1629번 (실버 1단계)문제 사이트: https://www.acmicpc.net/problem/1629  문제 설명   나의 풀이 def solution(a, b, c): if b == 0: return 1 elif b == 1: return a % c else: temp = solution(a, b // 2, c) temp = (temp * temp) % c if b % 2 == 0: return temp else: return (temp * a) % cA, B, C = map(int, input().split())pr..
백준 / 팩토리얼5 / 1564번 / Python
·
코딩테스트(프로그래머스 & 백준)/백준-Python
*문제 출처는 백준에 있습니다. 문제 제목: 팩토리얼5 / 1225번 (실버 1단계)문제 사이트: https://www.acmicpc.net/problem/1564  문제 설명   나의 풀이 N = int(input())def factorial(n): # 동적 계획법을 위한 테이블 초기화 dp = [1] * (n + 1) # 팩토리얼 계산, 뒤의 0을 줄이기 위해 각 단계에서 10의 배수를 줄여 나간다. for i in range(2, n + 1): dp[i] = dp[i - 1] * i while dp[i] % 10 == 0: dp[i] //= 10 dp[i] %= 100000000000000000 # 뒤 0이 아닌..
백준 / 효율적인 해킹 / 1325번 / Python
·
코딩테스트(프로그래머스 & 백준)/백준-Python
*문제 출처는 백준에 있습니다. 문제 제목: 효율적인 해킹 / 1325번 (실버 1단계)문제 사이트: https://www.acmicpc.net/problem/1325   문제 설명   나의 풀이 from collections import deque, defaultdict# 입력 처리N, M = map(int, input().split())# 그래프를 인접 리스트로 표현graph = defaultdict(list)for _ in range(M):    A, B = map(int, input().split())    graph[B].append(A)  # A가 B를 신뢰한다는 것을 B에서 A로 간선으로 표현def bfs(start):    visited = [False] * (N + 1)    q = de..
Programmers / 두 큐 합 같게 만들기 / Python
·
코딩테스트(프로그래머스 & 백준)/프로그래머스-Python
*문제 출처는 프로그래머스에 있습니다.  문제 제목: 두 큐 합 같게 만들기 (2단계)문제 사이트: https://school.programmers.co.kr/learn/courses/30/lessons/118667 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr  문제 설명   나의 풀이 from collections import dequedef solution(queue1, queue2): answer = 0 repeat = len(queue1) * 2 qu1 = deque(queue1) qu2 = deque(queue2) whi..
Programmers / 쿼드압축 후 개수 세기 / Python
·
코딩테스트(프로그래머스 & 백준)/프로그래머스-Python
*문제 출처는 프로그래머스에 있습니다.  문제 제목: 쿼드압축 후 개수 세기 (2단계)문제 사이트: https://school.programmers.co.kr/learn/courses/30/lessons/68936 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr  문제 설명   나의 풀이 def solution(arr): answer = [0, 0] rows = len(arr) def qu(x, y, n): first = arr[x][y] for i in range(x, x + n): for j in..
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 / 피로도 / C++
·
코딩테스트(프로그래머스 & 백준)/프로그래머스-C++
*문제 출처는 프로그래머스에 있습니다. 문제 제목: 피로도 (2단계) 문제 사이트: https://school.programmers.co.kr/learn/courses/30/lessons/87946 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 설명 나의 풀이 #include #include #define MAX 8 using namespace std; int result = 0; bool visited[MAX] = {false}; int dfs(int cnt, int k, vector &dungeons) { if (cnt > result) resu..
Programmers / 할인 행사 / C++
·
코딩테스트(프로그래머스 & 백준)/프로그래머스-C++
*문제 출처는 프로그래머스에 있습니다. 문제 제목: 할인 행사 (2단계) 문제 사이트: https://school.programmers.co.kr/learn/courses/30/lessons/131127 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 설명 나의 풀이 #include #include #include using namespace std; int solution(vector want, vector number, vector discount) { int answer = 0; map wantcount; for (int i = 0; i < wa..
김치바보
'코딩테스트' 태그의 글 목록