일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
Tags
- php 프로그래밍
- 스프링
- 한정 분기
- C
- php
- 파이썬
- 플러터 개발환경 설정
- 자바 스프링
- php 프로그래밍 입문 문제풀이
- 최단 경로
- 페이코 초대코드
- 배열
- php 프로그래밍 입문 예제
- 자바
- php 프로그래밍 입문 3판
- 플러터
- Java
- 백준
- 페이코 추천인
- JAVA SPRING
- Flutter
- 페이코 친구코드
- php 프로그래밍 입문 연습문제
- php 프로그래밍 입문
- 페이코 추천인코드
- php 프로그래밍 입문 솔루션
- C언어
- spring
- programmers
- SWEA
Archives
- Today
- Total
11-07 11:40
ImJay
[SW Expert Academy] 18799. 평균의 평균 본문
반응형
[SW Expert Academy] 18799. 평균의 평균
풀이
# 테스트 케이스의 수 T를 입력 받음
T = int(input())
# 부분집합의 평균을 계산하는 함수 정의
def avg(num):
return sum(num) / len(num)
# 각 테스트 케이스에 대해 반복
for t in range(1, T + 1):
# 집합의 크기 n 입력
n = int(input())
# 집합 S를 구성하는 n개의 정수를 리스트로 입력
S = list(map(int, input().split()))
# 부분집합을 저장할 리스트를 초기화하고, 전체 부분집합의 평균을 저장할 변수 tot를 초기화
subset = [[]]
tot = 0
# 집합 S의 각 원소에 대해 부분집합을 생성하고 그 평균을 계산
for s in S:
size = len(subset)
for i in range(size):
num = subset[i] + [s]
subset.append(num)
tot += avg(num)
# 전체 부분집합의 평균을 계산하고 소수점 아래 20자리까지 반올림하여 결과를 저장
res = round(tot / (len(subset) - 1), 20)
# 결과 출력
print(f'#{t} {res}')
참고자료
반응형
'SW Expert Academy > D4' 카테고리의 다른 글
[SWEA/Java] 1210. Ladder1 : 재귀로 풀기 (0) | 2024.02.04 |
---|---|
[SWEA/Java] 1249. 보급로 (0) | 2024.02.04 |
[SWEA/Java] 4408. 자기 방으로 돌아가기 (0) | 2024.01.29 |
[SWEA/Java] 1210. [S/W 문제해결 기본] 2일차 - Ladder1 (0) | 2024.01.29 |
[SWEA/Java] 8382. 방향 전환 (0) | 2024.01.20 |
Comments