수미니그
개발자 X
수미니그
전체 방문자
오늘
어제
  • 전체 (17)
    • Algorithms (13)
      • Concepts (0)
      • 백준 (BOJ) (4)
      • 프로그래머스 (Programmers) (9)
    • SQL (4)
    • 일상 (0)

블로그 메뉴

  • 홈
  • 태그
  • 방명록

공지사항

인기 글

태그

  • select
  • Lambda
  • 자료구조
  • group by
  • 해시
  • 알고리즘 풀이
  • 정렬
  • sum
  • DFS
  • 집계 함수
  • Algorithm
  • n진수
  • DP
  • Dictionary
  • BFS
  • 프로그래머스
  • MIN
  • 구현
  • Python
  • count
  • programmers
  • 스택
  • MAX
  • BOJ
  • SQL
  • 백준
  • 소수
  • 알고리즘

최근 댓글

최근 글

@ 수미니그
hELLO · Designed By 정상우.
수미니그

개발자 X

[백준] 2002번 추월 (Python)
Algorithms/백준 (BOJ)

[백준] 2002번 추월 (Python)

2022. 3. 24. 23:31
 

2002번: 추월

입력은 총 2N+1개의 줄로 이루어져 있다. 첫 줄에는 차의 대수 N(1 ≤ N ≤ 1,000)이 주어진다. 둘째 줄부터 N개의 줄에는 대근이가 적은 차량 번호 목록이 주어지고, N+2째 줄부터 N개의 줄에는 영식이

www.acmicpc.net

백준 2002번: 추월 문제 설명
백준 2002번: 추월 입출력 및 예제

  • solved.ac 기준 실버 I 난이도 문제이다
  • 예제 입력 1 기준으로 생각한다면 다음과 같다:
입구 출구
ZG431SN ZG206A
ZG5080K ZG431SN
ST123D ZG5080K
ZG206A ST123D
  • 입구에서 제일 마지막에 있던 ZG206A 차량이 출구에서 맨 앞에 있으므로 반드시 추월을 했다
  • 즉, 입구와 출구의 차량을 순서대로 비교하며 같은 순서에 나오지 않았다면 해당 순서에 삽입해준다
  • 코드로 구현하면 아래와 같다:
n = int(input())
enter = []
out = []
ans = 0
for _ in range(n):
    enter.append(input())
for _ in range(n):
    out.append(input())

for i in range(n):
    if out[i] == enter[i]:
        pass
    else:
        temp = enter.pop(enter.index(out[i]))
        enter.insert(i, temp)
        ans += 1
print(ans)

 

  • enter 리스트에서 pop과 insert를 반복하며 out 리스트와 비교해준다

 

GitHub에서 코드 보기

'Algorithms > 백준 (BOJ)' 카테고리의 다른 글

[백준] 1520번 내리막 길 (Python)  (0) 2022.03.31
[백준] 7576번 토마토 (Python)  (0) 2022.03.31
[백준] 14501번 퇴사 (Python)  (0) 2022.03.23
    수미니그
    수미니그

    티스토리툴바