[프로그래머스 Lv.1] 모의고사
프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr def solution(answers): answer = [] def method_1(answers): inputs = [1,2,3,4,5]*(10000//5 + 1) result = [1 for i,value in enumerate(answers) if answers[i] == inputs[i]] return sum(result) def method_2(answers): inputs = [2,1,2,3,2,4,2,5]*(10000//8 + 1) result = [1 for i,value in enumerat..
2023. 9. 29.
[프로그래머스 Lv.1] 최소직사각형
프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr def solution(sizes): sizes = [sorted(x,reverse=True) for x in sizes] # [[60, 50], [70, 30], [60, 30], [80, 40]] widths = [x[0] for x in sizes] # [60, 70, 60, 80] heights = [x[1] for x in sizes] # [50, 30, 30, 40] return max(widths)*max(heights) 이번 문제는 주어진 명함들의 가로와 세로길이가 주어졌을 때, 명함을 가로나 ..
2023. 9. 28.
[백준 1476번] 날짜 계산
E, S, M = map(int,input().split()) RESULT_RANGE = 15*28*19 + 1 for i in range(RESULT_RANGE): a, b, c = i%15 + 1, i%28 + 1, i%19 + 1 if E == a and S == b and M == c: print(i + 1) break 이번 문제는 E, S, M 이라는 수를 가지는 년도를 나타낼 때, 주어진 E, S, M으로 표시되는 가장 빠른 년도를 구하는 문제이다. 다만, 여기서 주의해야할 점은 세 수는 모두 서로 다른 범위를 가진다는 점이다. 이 문제의 풀이에 핵심은 '가능한 경우의 수를 모두 탐색해보는 완전 탐색, 즉 Brute Force 알고리즘을 사용해야 한다는 점'과 '나머지를 활용하여 값을 비교한다..
2023. 5. 4.
[백준 3085번] 사탕 게임
n = int(input()) array = [[] for _ in range(n)] nx = [-1,1,0,0] ny = [0,0,-1,1] for i in range(n): array[i] = list(input()) # 행에서 연속된 문자의 개수를 확인하는 함수 def row_check(x,y): count = 1 for i in range(y,n+1): if i == n-1: break if array[x][i] == array[x][i+1]: count += 1 else: break for i in range(y,-1,-1): if i == 0: break if array[x][i] == array[x][i-1]: count += 1 else: break return count # 열에서 연속된..
2023. 5. 2.