Powered by the Tomorrow.io Weather API
[ 프리미엄 ] 코딩과 관련한 컨텐츠 및 뉴스를 공유합니다.

※ 파이썬 | Javascript | 꿀팁

[2.0.2.3 계묘년 흑토끼] 대박나세요! 자세히보기

카테고리 없음

2006 정보 올림피아드 초등부!! 타일밟기!

잇잇쌤 2023. 5. 16. 17:06
728x90
반응형
SMALL

오늘은 타일밟기라고 이분탐색에 대해서 배워보도록 하자.

 

이분탐색은 BINARY SEARCH인데 LOG N 코딩 이다.

반 뚝 잘라, 맞아 틀려 확인하고,

틀린부분은 그만검색해~가 바이너리 서치의 기본 개념

 

결과값은 잘 나오는데..

 

정보올림피아드가 뭔가 문제가 있는듯..

ㅋㅋㅋ

 

난 맞은걸로 !! 

실행후 결과는 잘나오면 됬지!

2006년 출제문제라 이이제기를 안했나보다

정답률이 24%....

 

 

내가 한 소스 확인! ★

더보기

import math
maxd = 0
tilen = int(input())
ty = [ [1,36,[11,12,13]],
       [2,56,[11,13,15,17]],
       [3,60,[17,20,23]],
       [4,33,[7,11,15]],
       [5,18,[1,6,11]],
       [5,38,[2,7,12,17]],
       [6,21,[1,7,13]],
       [6,51,[11,17,23]],
       [7,39,[6,13,20]],
       [8,45,[7,15,23]],
       [9,33,[2,11,20]],
       [11,36,[1,12,23]]
    ]
if tilen >= 3 and tilen <= 3000:
    tlist = map(int, input().split())


inlist = list(tlist)
for jj in inlist:
    if jj > 1000000:
        maxd = -1
result = []
i = 0

if maxd == 0:

    for j in ty:
        #result.clear()
        #print("1level",j[2])
        i = 0
        for x in range(len(inlist)):
            #print("비교1",inlist[i:len(j[2])+i])
            #print("비교2",j[2])
            if len(j[2]) >= 3 and inlist[i:(len(j[2])+i)] == j[2]:
                #print("result",j[1])
                result.append(j[1])
                maxd = j[1]
            i += 1

    for j in result:
        if maxd < j:
            maxd = j

    print(maxd)

 

728x90
반응형
Powered by the Tomorrow.io Weather API