반응형
안녕하세요 Jin's 입니다.
백준 알고리즘의 1차원 배열 마지막 문제인 평균은 넘겠지 ( 문제 번호 : 4344 )의 소스입니다.
Java와 Python 두가지 버전 소스입니다.
1) JAVA
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
int testCase = Integer.parseInt(scan.nextLine());
for(int i=0; i<testCase; i++){
int student = scan.nextInt();
int[] score = new int[student];
int ave = 0;
int cnt = 0;
for(int j=0; j<student; j++){
score[j] = scan.nextInt();
ave += score[j];
}
ave = ave/student;
for(int j=0; j<student; j++){
if(score[j] > ave){
cnt ++;
}
}
System.out.printf("%.3f",(double)cnt/student*100);
System.out.println("%");
}
scan.close();
}
}
2) PYTHON
* 리스트 자체로 for문을 돌려 for문의 j 값이 리스트안의 값이 바로 나올수 있도록 설정
(이때 첫번째 학생수 제외하고 나오도록 [1:] 설정)
* 소수점 이하 3자리 나오도록 %.3f 설정
* 소수점 이하 3자리 반올림 round 지정
for i in range(int(input())):
total = list(map(int, input().split()))
ave = (sum(total)-total[0]) / total[0]
cnt = 0
for j in total[1:]:
if j > ave:
cnt += 1
print(str('%.3f' % round(cnt / total[0] * 100, 3))+'%')
여러분도 한번 풀어보세요!
반응형
'Development > 알고리즘' 카테고리의 다른 글
[ 백준 알고리즘 ] 4673번 셀프 넘버 (JAVA/python) (0) | 2020.06.23 |
---|---|
[ 백준 알고리즘 ] 15596번 정수 N개의 합 (JAVA/python) (0) | 2020.06.04 |
[ 백준 알고리즘 ] 8958번 OX퀴즈 (JAVA/python) (0) | 2020.06.02 |
[ 백준 알고리즘 ] 1546번 평균 (JAVA/python) (0) | 2020.06.01 |
[ 백준 알고리즘 ] 3052번 나머지 (JAVA/python) (0) | 2020.05.22 |