아직 만들고 있는 페이지입니다.

이 페이지는 아직 만드는 중입니다. 보이는 내용은 바뀔 수 있습니다.

Moist (Small1)

시간 제한5초메모리 제한512 MB

요약
카드 뭉치마다 로봇이 사전식 순서로 정렬하며 옮기는 카드 수를 셉니다.
난이도

쉬움10점 중 2점

유형
배열, 문자열
정답자
아직 제출이 없습니다

문제

모이스트는 피겨 스케이팅 트레이딩 카드를 모은다. 카드가 계속 늘어나 이제는 한 무더기로 쌓아 두기 어려울 만큼 많아졌다. 필요할 때 원하는 카드를 바로 찾으려면 카드를 사전순으로 정리해야 한다.

문제는 모이스트가 카드를 직접 집을 수 없다는 점이다. 카드가 손에서 자꾸 미끄러지고, 땀 때문에 카드가 영구적으로 상한다. 그중에는 값비싼 카드도 있다. 그래서 모이스트는 호러블 박사를 설득해 정렬 로봇을 만들었다. 호러블 박사는 로봇이 정렬 과정에서 카드를 한 장 옮길 때마다 $1을 받도록 만들어 두었다.

로봇의 정렬 방식은 아주 원시적이다. 로봇은 카드 더미를 위에서 아래로 훑는다. 바로 앞 카드보다 사전순으로 작은 카드를 만나면 그 카드를 위쪽 더미의 제자리로 옮긴다. 이 동작에 $1이 들고, 로봇은 이어서 아래쪽으로 계속 훑으며 카드를 한 장씩 옮긴다. 더미 전체가 위에서 아래로 사전순이 되면 정렬이 끝난다.

모이스트는 수중에 돈이 거의 없지만, 카드를 정리해 두는 일이 남은 유일한 즐거움이다. 로봇으로 카드 더미를 정렬하는 데 드는 비용을 구하라.

입력

첫 줄에 테스트 케이스의 수 TT가 주어진다. 이어서 TT개의 테스트 케이스가 주어진다. 각 테스트 케이스의 첫 줄에는 정수 NN이 주어지고, 다음 NN개의 줄에는 카드 더미의 위에서 아래 순서대로 피겨 스케이팅 선수의 이름이 한 줄에 하나씩 주어진다.

제한

  • 1≤T≤1001 \le T \le 100
  • 1≤N≤101 \le N \le 10
  • 이름은 알파벳 문자와 공백 문자로만 이루어진다.
  • 이름의 길이는 100자 이하이다.
  • 이름은 공백으로 시작하지 않고 공백으로 끝나지도 않는다.
  • 같은 테스트 케이스 안에서 같은 이름이 두 번 나오지 않는다.
  • 사전순 비교에서는 공백 문자가 가장 앞이고, 그다음이 대문자, 그다음이 소문자이다.

출력

각 테스트 케이스마다 Case #x: y 형식으로 한 줄씩 출력한다. xx는 1부터 시작하는 테스트 케이스 번호이고, yy는 로봇으로 카드 더미를 정렬하는 데 드는 비용을 달러 단위로 나타낸 값이다.

예제5

  1. 예제 1

    입력
    2
    2
    Oksana Baiul
    Michelle Kwan
    3
    Elvis Stojko
    Evgeni Plushenko
    Kristi Yamaguchi
    
    예상 출력
    Case #1: 1
    Case #2: 0
    
  2. 예제 2

    입력
    1
    1
    Surya Bonaly
    
    예상 출력
    Case #1: 0
    
  3. 예제 3

    입력
    1
    10
    Yuzuru Hanyu
    Yuna Kim
    Tara Lipinski
    Shizuka Arakawa
    Nathan Chen
    Mao Asada
    Kurt Browning
    Johnny Weir
    Brian Boitano
    Alina Zagitova
    
    예상 출력
    Case #1: 9
    
  4. 예제 4

    입력
    1
    3
    C
    A
    B
    
    예상 출력
    Case #1: 2
    
  5. 예제 5

    입력
    3
    2
    Anna
    Ann B
    2
    adam
    Zoe
    2
    A B
    A
    
    예상 출력
    Case #1: 1
    Case #2: 1
    Case #3: 1