[백준] 2775번 - 부녀회장이 될테야 (파이썬)

2022. 8. 10. 21:24·🎲 알고리즘 공부/백준
목차
  1. 🍦 코드 설명 (실행 순서대로 나열)

> 

[문제]

평소 반상회에 참석하는 것을 좋아하는 주희는 이번 기회에 부녀회장이 되고 싶어 각 층의 사람들을 불러 모아 반상회를 주최하려고 한다.

이 아파트에 거주를 하려면 조건이 있는데, “a층의 b호에 살려면 자신의 아래(a-1)층의 1호부터 b호까지 사람들의 수의 합만큼 사람들을 데려와 살아야 한다” 는 계약 조항을 꼭 지키고 들어와야 한다.

아파트에 비어있는 집은 없고 모든 거주민들이 이 계약 조건을 지키고 왔다고 가정했을 때, 주어지는 양의 정수 k와 n에 대해 k층에 n호에는 몇 명이 살고 있는지 출력하라. 단, 아파트에는 0층부터 있고 각층에는 1호부터 있으며, 0층의 i호에는 i명이 산다.

 

문제 이해를 위한 그림

 - 대충 저 아파트는 이런 식으로 사람이 거주해야한다.

 

입출력 예시

 

 

https://www.acmicpc.net/problem/2775

 

2775번: 부녀회장이 될테야

첫 번째 줄에 Test case의 수 T가 주어진다. 그리고 각각의 케이스마다 입력으로 첫 번째 줄에 정수 k, 두 번째 줄에 정수 n이 주어진다

www.acmicpc.net

 


🎨 풀이

💡 전체 코드

T = int(input())

for _ in range(T):

    k = int(input())
    n = int(input())

    people = [1,2,3,4,5,6,7,8,9,10,11,12,13,14]

    for i in range(k):
        for j in range(1,n):
            people[j] += people[j-1]

    print(people[n-1])

> 핵심 : 규칙 찾기

           

🍦 코드 설명 (실행 순서대로 나열)

# main

T = int(input())

1. T를 입력받는다.

 - T : 테스트 케이스 수

 

@ for문 (2번~8번)

for _ in range(T):

2. for문을 실행시킨다. (T번 반복)

 

    k = int(input())
    n = int(input())
    
    people = [1,2,3,4,5,6,7,8,9,10,11,12,13,14]

3. k, n을 입력받는다. ex ) k = 3, n = 2 => 302호

 - k : 층수

 - n : 호수

4. people 변수에 먼저 1부터 14까지 넣어준다.

 - 현재 들어가있는 수는 0층 기준이다.

 - 1부터 14인 이유는 n 의 범위가 1부터 14까지이기 때문이다.

 

@ 2중 for문 (5번~7번)     => 계산 과정

    for i in range(k):
        for j in range(1,n):
            people[j] += people[j-1]

5. for문을 실행한다. (k번)

6. for문을 실행한다. (1부터 n-1까지)

7. people[j]에 people[j-1] 값을 더해준다.

 - 왜 이렇게 해주냐면! 값을 구해주려면 그 밑에 있는 수와 바로 전에 있던 수를 더해주면 되기 때문이다.

 - 예를 들면, 203호 = 103호 + 202호 = 6 + 4 = 10 이다.

 - 점점 층 수를 계산하면서 올라가는 느낌이다.

 

    print(people[n-1])

8. people[n-1]을 출력한다.

 - n-1인 이유는, 배열은 0부터 시작하기 때문이다. 

 


​끝~

 

⭐ 느낀점

> 이런 문제는 규칙 찾는 게 참말루 중요한 것 같다. ^ㅁ^.. 파이팅

'🎲 알고리즘 공부 > 백준' 카테고리의 다른 글

[백준] 10156번 - 과자 (파이썬)  (0) 2022.08.13
[백준] 7568번 - 덩치 (파이썬)  (0) 2022.08.11
[백준] 2798번 - 블랙잭 (파이썬)  (0) 2022.08.10
[백준] 10039번 - 평균 점수 (파이썬)  (0) 2022.08.08
[백준] 2440번 - 별 찍기 3 (파이썬)  (0) 2022.08.07
  1. 🍦 코드 설명 (실행 순서대로 나열)
'🎲 알고리즘 공부/백준' 카테고리의 다른 글
  • [백준] 10156번 - 과자 (파이썬)
  • [백준] 7568번 - 덩치 (파이썬)
  • [백준] 2798번 - 블랙잭 (파이썬)
  • [백준] 10039번 - 평균 점수 (파이썬)
듬듬
듬듬
  • 듬듬
    두드림
    듬듬
  • 전체
    오늘
    어제
    • 분류 전체보기 (280)
      • 📑 신입일기 (35)
      • 🍪 Web (1)
        • angular (1)
        • JavaScript (0)
      • 🧩 Node.js 공부 (2)
      • 🎲 알고리즘 공부 (192)
        • 프로그래머스 (76)
        • 백준 (96)
        • 코드업 (19)
      • 🎨 Tistory Customizing (1)
      • 💌 일상 (12)
        • 일상 (5)
        • 기록 (7)
      • 📜 자격증 (2)
        • 정보처리기사 (2)
      • 📗 spring boot 공부 (9)
      • 학교 공부 (20)
        • ICT 개론 (14)
        • 리눅스 (6)
      • ChatGPT 랑 놀기 (0)
  • 블로그 메뉴

    • 홈
    • 방명록
    • 글쓰기
  • 링크

    • 깃허브
  • 공지사항

  • 인기 글

  • 태그

    충무로
    코드업
    컨텐더스
    오블완
    정처기
    til
    코테
    6월 목표
    연습문제
    오버워치
    코린이
    폰켓몬
    파이썬
    피보나치수
    스프링부트
    티스토리챌린지
    신입일기
    찬양추천
    행렬덧셈
    카카오
    BOJ
    스프링 부트
    정보처리기사
    일기
    codeup
    프로그래머스
    백준
    50문답
    코민이
    nodejs
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.0
듬듬
[백준] 2775번 - 부녀회장이 될테야 (파이썬)
상단으로

티스토리툴바

단축키

내 블로그

내 블로그 - 관리자 홈 전환
Q
Q
새 글 쓰기
W
W

블로그 게시글

글 수정 (권한 있는 경우)
E
E
댓글 영역으로 이동
C
C

모든 영역

이 페이지의 URL 복사
S
S
맨 위로 이동
T
T
티스토리 홈 이동
H
H
단축키 안내
Shift + /
⇧ + /

* 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.