LeetCode 면접 문제 16.10. 생존 인원수 동태 계획

LeetCode 면접 문제 16.10. 생존 인원수
글 목록
  • LeetCode [면접 문제 16.10. 생존 인원수] (https://leetcode-cn.com/problems/living-people-lcci/)
  • 하나, 문제 풀이
  • 2. 예시
  • 3. 힌트
  • 4. 해답
  • 사고방식: 동태 기획
  • 1. 데이터 에 따라 연간 출생 과 사망 자 를 계산한다
  • .
  • 2. 매년 출생 과 사망자 의 수량 에 따라 1 년 의 생존 인원
  • 을 계산한다.
  • 5. 후기
  • 하 다
    N 명의 출생 연도 와 사망 연 도 를 정 하고, i 개인의 출생 연 도 는 birth [i] 이 며, 사망 연 도 는 death [i] 로 생존 인원 이 가장 많은 연 도 를 계산 하 는 방법 을 실현 한다.
    모든 사람 이 1900 년 에서 2000 년 사이 에 태 어 났 다 고 가정 할 수 있다.만약 한 사람 이 어느 해 의 임의의 시기 에 생존 상태 에 있다 면, 그들 은 그 해 의 통계 에 포함 되 어야 한다.예 를 들 어 1908 년 에 태 어 나 1909 년 에 죽은 사람 은 1908 년 과 1909 년 의 계수 에 들 어가 야 한다.
    여러 해 동안 생존 인원 이 같 고 모두 최대 치 라면 그 중 가장 작은 해 를 수출 한다.
    예시
      :
    birth = {1900, 1901, 1950}
    death = {1948, 1951, 2000}
      : 1901
    

    힌트
  • 0 < birth.length == death.length <= 10000
  • birth[i] <= death[i]

  • 해답
    class Solution {
        public int maxAliveYear(int[] birth, int[] death) {
            int[] years = new int[102];
            //             
            for(int i = 0; i < birth.length; i++){
                years[birth[i]-1900]++;
            }
            for(int i = 0; i < death.length; i++){
                years[death[i]-1900+1]--;
            }
            int max = 0;
            //                  
            for(int i = 1; i < 102; i++){
                years[i] += years[i-1];
                if(years[max] < years[i]) max = i;
            }
            return max + 1900;
        }
    }
    

    사고방식: 동적 기획
    1. 데이터 에 따라 연간 출생 과 사망 자 를 계산한다.
    그해 에 1 명 이 태 어 났 고 그해 의 출생 자 수 는 + 1 이다.그해 사망 자 는 1 명, 이듬해 사망 자 는 + 1 명 이 었 다.
    그해 의 자연 증가 수 를 설정 하 다 = 그해 출생 자 수 - 전년 도 사망자 수 그해 의 자연 증가 수 = 그해 출생 자 수 - 전년 도 사망자 수 그해 의 자연 증가 수 = 그해 출생 자 수 - 전년 도 사망자 수
    2. 매년 출생 과 사망자 수 에 따라 연간 생존 인원 을 계산한다.
    그해 생존 인원수 = 전년 의 생존 인원수 + 그해 의 자연 증가 수 그해 생존 인원수 = 전년 의 생존 인원수 + 그해 의 자연 증가 수 그해 생존 인원수 = 전년 의 생존 인원수 + 그해 의 자연 증가 수
    첫해 (1900 년) 의 생존 인원수 즉 첫해 의 출생 자 수 는 이듬해 부터 공식 에 따라 매년 생존 인원 을 얻 을 수 있 고 max 변수 로 생존 인원수 의 최대 치 를 얻 으 면 된다.
    후기
    좀 어 지 럽 게 썼 고, 동시에 여러분 의 잘못 을 지적 하 는 것 도 환영 합 니 다.
    출처: 스냅 백 (LeetCode) 링크:https://leetcode-cn.com/problems/living-people-lcci 저작권 은 인터넷 에 귀속 된다.상업 전 재 는 정부 에 연락 하여 권한 을 부여 해 주 십시오. 비 상업 전 재 는 출처 를 밝 혀 주 십시오.

    좋은 웹페이지 즐겨찾기