3/18 스터디문제

1번 문제.
https://www.acmicpc.net/problem/1966
-> 프린터 큐

테스트 케이스 이해하기

입력값
3						-> 3번의 테스트
1	0					-> n = 1, m =0
5						-> importance => 5
4	2					-> n = 4, m =2
1	2	3	4			-> importance => 1, 2, 3, 4
6	0					-> n =6, m =0
1	1	9	1	1	1	-> importance = 1, 1, 9, 1, 1, 1
출력 값
1
2
5

출력 값이 왜 1, 2, 5..?

1번 문제 풀이 코드

import sys

testCase = int(sys.stdin.readline())

for _ in range(testCase):
    n, m = list(map(int, sys.stdin.readline().split()))
    importance = list(map(int, sys.stdin.readline().split()))
    impIdx = list(range(len(importance)))
    target = impIdx[m]

    # ┌ 최대값과 m번째 값이 맞다면 그 순서를 출력 해준다.
    order = 0
    while True:

        if importance[0] == max(importance):
            order += 1

            if impIdx[0] == target:
                print(order)
                break
            else:
                importance.pop(0)
                impIdx.pop(0)

        else:
            importance.append(importance.pop(0))
            impIdx.append(impIdx.pop(0))

===============================================
모의 코테 이후로 나의 부족함이 여실 없이 드러났다. 싱숭생숭하고, 문제 푸는데 집중도 못하고, 이해를 더 못하는 기분이 들어서 속상했다.. 엎친데 덮친 격으로 몸은 또 왜 이리 아픈지.. ㅜㅠㅠ 기초문제부터 풀어나가보자는 마음으로 한 문제라도 풀어보고자 했다.
마음을 다잡자. 스프린트가 아니라 마란톤을 준비할 것!
몸 관리도 착실하게 해나가야 한다.. 아프면 나만 손해ㅜ

좋은 웹페이지 즐겨찾기