본문 바로가기
[백준][14889] Combinations을 이용한 풀이 https://www.acmicpc.net/problem/14889 14889번: 스타트와 링크 예제 2의 경우에 (1, 3, 6), (2, 4, 5)로 팀을 나누면 되고, 예제 3의 경우에는 (1, 2, 4, 5), (3, 6, 7, 8)로 팀을 나누면 된다. www.acmicpc.net 문제에 대한 이해: 선수들의 번호를 통해 주어진 행렬M에서 선수의 능력치를 찾을 수 있다. 1, 2, 4 번의 선수가 한 팀에 속한다면 해당 팀의 능력치는 M[1,2] + M[1, 4] + M[2, 1] + M[2, 4] + M[4, 1] + M[4, 2], 즉 1, 2, 4로 이룰 수 있는 원소의 수가 2개인 모든 집합에서 첫번째 원소를 행, 두번째 원소를 열로 보고 찾은 수의 합이다. 1번이 2번과 협업할 때, 2.. 2023. 1. 5.
[프로그래머스][옹알이] 재귀를 이용한 풀이 https://school.programmers.co.kr/learn/courses/30/lessons/120956?language=python3 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제에 대한 이해: 4개의 문자열로 이루어진 리스트 E가 "aya", "ye", "woo", "ma"가 주어진다. 입력값 리스트 L이 주어졌을 때 L에서 E에 있는 문자열로'만' 이루어진 원소 l이 몇 개인지 구하라. 문제풀이: 재귀함수를 이용한다. l은 모두 E에 속한 원소들로만 이루어진 문자열이어야 한다. 따라서 1) 문자열 l의 0번 인덱스부터 'a', 'y'.. 2023. 1. 5.
[코드업 문제풀이] 6098 : [기초-리스트] 성실한 개미 코드업 파이썬 기초 알고리즘 문제 100제 중에서 6098번에 대한 풀이이다. 100제 끝. import sys d = [[int(x) for x in sys.stdin.readline().rstrip().split()] for y in range(10)] d[1][1] = 9 i = 1 j = 1 while j < 9: if d[i][j+1] == 0: d[i][j+1] = 9 j += 1 elif d[i][j+1] == 1: if d[i+1][j] == 1: break elif d[i+1][j] == 2: d[i+1][j] = 9 break else: d[i + 1][j] = 9 i += 1 elif d[i][j+1] == 2: d[i][j+1] = 9 break; else: d[j][i+1] = 9.. 2022. 2. 20.
[코드업 문제풀이] 6097 : [기초-리스트] 설탕과자 뽑기 코드업 파이썬 기초 알고리즘 문제 100제 중에서 6097번에 대한 풀이이다. t, d = map(int, input().split()) dimension = [[0 for x in range(d)] for y in range(t)] n = int(input()) location = [[int(x) for x in input().split()] for i in range(n)] for xy in location: l = xy[0] d = xy[1] x = xy[2] - 1 y = xy[3] - 1 if d == 0: for v in range(l): dimension[x][y + v] = 1 else: for v in range(l): dimension[x + v][y] = 1 for i in dimen.. 2022. 2. 19.