Development Project

[ Baekjoon - 단계별로 풀어보기(06/03) ] - 10단계 : 브루트 포스 본문

CodingTest/Baekjoon

[ Baekjoon - 단계별로 풀어보기(06/03) ] - 10단계 : 브루트 포스

나를 위한 시간 2022. 6. 3. 14:36
  • 2798 : 블랙잭
from itertools import combinations
a,b=map(int,input().split())
l=list(map(int,input().split()))[0:a]
max=0
for i in list(combinations(l,3)):
    s=i[0]+i[1]+i[2]
    if s<=b and max<=s:
        max=s
print(max)

 

  • 2231 : 분해합
n=input()
i='1'
while(int(i)<=int(n)):
    cur=int(i)+sum([int(j) for j in list(i)])
    if int(n)==cur:
        break
    i=str(int(i)+1)
print(0 if int(n)+1==int(i) else i)

 

  • 7568 : 덩치
l = []

for _ in range(int(input())):
    l.append(list(map(int, input().split())))

for i in l:
    rank = 1
    for j in l:
        if i[0] < j[0] and i[1] < j[1]:
                rank += 1
    print(rank, end = " ")

 

  • 1018 : 체스판 다시 칠하기
N, M = map(int, input().split())
ori = []
cnt = []

for _ in range(N):
    ori.append(input())

for a in range(N-7):
    for b in range(M-7):
        idx1 = 0
        idx2 = 0
        for i in range(a, a+8):
            for j in range(b, b+8):
                if (i+j) % 2 == 0:
                    if ori[i][j] != 'W':
                        idx1 += 1
                    if ori[i][j] != 'B':
                        idx2 += 1
                else:
                    if ori[i][j] != 'B':
                        idx1 += 1
                    if ori[i][j] != 'W':
                        idx2 += 1
        cnt.append(min(idx1, idx2))
print(min(cnt))

 

  • 1436 : 영화감독 숌
n = int(input())
arr = []

i = 666
while True:
    s = str(i)
    if len(arr) == 10000:
        break
    if s.find("666") != -1:
        arr.append(s)
    i += 1
#
n=int(input())
i=1
while n!=0:
    i+=1
    if "666" in str(i):
        n-=1
print(i)
Comments