Notice
Recent Posts
Recent Comments
Link
«   2025/08   »
1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
31
Tags
more
Archives
Today
Total
관리 메뉴

개발 일지

2678. Number of Senior Citizens (노인 수) 본문

코딩 테스트/LeetCode

2678. Number of Senior Citizens (노인 수)

포카리tea 2024. 10. 8. 12:25

0-인덱스 문자열 배열 details이 주어집니다. details의 각 요소는 주어진 승객에 대한 정보를 길이 15의 문자열로 압축하여 제공합니다. 시스템은 다음과 같습니다:

  • 처음 10개의 문자는 승객의 전화번호로 구성됩니다.
  • 다음 문자는 해당 인물의 성별을 나타냅니다.
  • 다음 두 문자는 사람의 나이를 나타내는 데 사용됩니다.
  • 마지막 두 문자가 해당 사람에게 할당된 좌석을 결정합니다.

엄격하게 60세 이상인 승객 수를 반환합니다.

 

예시 1:

입력: details = ["7868190130M7522","5303914400F9211","9273338290F4010"]
출력: 2
설명: 인덱스 0, 1, 2의 승객은 75세, 92세, 40세입니다. 따라서 60세 이상인 사람은 2명입니다.

 

예시 2:

입력: details = ["1313579440F2036","2921522980M5644"]
출력: 0
설명: 60세 이상 승객은 아무도 없습니다.

 

 

조건:

  • 1 <= details.length <= 100
  • details[i].length == 15
  • details[i]는 '0'에서 '9'까지의 숫자로 구성됩니다.
  • details[i][10]은 'M' 또는 'F' 또는 'O'입니다.
  • 승객의 전화번호와 좌석 번호는 서로 다릅니다.

정답:

public class Solution {
    public int CountSeniors(string[] details) {
        int result = 0;

        for (int i = 0; i < details.Length; i++)
        {
            if (Int32.Parse(details[i].Substring(11, 2)) > 60)
            {
                result += 1;
            }
        }

        return result;
    }
}

해설: 60세가 넘는 승객의 인원을 체크해야하기 때문에 문자열 배열의 11~12 index를 잘라 해당 문자열이 60보다 클 때 result에 1을 더해주고 모든 인원은 체크하면 return해줍니다.