https://www.acmicpc.net/problem/25206
c언어와 같은 방식의 문제 풀이 코드
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
double result = 0.0, all = 0.0, n;
String subject, temp;
char grade[] = new char[2];
int count = 20;
for (int i = 0; i < count; i++) {
subject = sc.next();
n = sc.nextDouble();
temp = sc.next();
for (int j = 0; j < temp.length(); j++) {
grade[j] = temp.charAt(j);
}
all += n;
if (grade[0] == 'P') {
all -= n;
} else if (grade[0] == 'A') {
if (grade[1] == '+') {
result += n * 4.5;
} else {
result += n * 4.0;
}
} else if (grade[0] == 'B') {
if (grade[1] == '+') {
result += n * 3.5;
} else {
result += n * 3.0;
}
} else if (grade[0] == 'C') {
if (grade[1] == '+') {
result += n * 2.5;
} else {
result += n * 2.0;
}
} else if (grade[0] == 'D') {
if (grade[1] == '+') {
result += n * 1.5;
} else {
result += n * 1.0;
}
} else {
result += n * 0.0;
}
}
System.out.println(result / all);
}
}
예전에 풀었던 방법과 다른 방법을 사용한 코드
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
double result = 0.0, all = 0.0, n;
String subject, grade;
int count = 20;
for (int i = 0; i < count; i++) {
subject = sc.next();
n = sc.nextDouble();
grade = sc.next();
all += n;
if (grade.compareTo("P") == 0) {
all -= n;
} else if (grade.compareTo("A+") == 0) {
result += n * 4.5;
} else if (grade.compareTo("A0") == 0) {
result += n * 4.0;
} else if (grade.compareTo("B+") == 0) {
result += n * 3.5;
} else if (grade.compareTo("B0") == 0) {
result += n * 3.0;
} else if (grade.compareTo("C+") == 0) {
result += n * 2.5;
} else if (grade.compareTo("C0") == 0) {
result += n * 2.0;
} else if (grade.compareTo("D+") == 0) {
result += n * 1.5;
} else if (grade.compareTo("D0") == 0) {
result += n * 1.0;
} else {
result += n * 0.0;
}
}
System.out.println(result/all);
}
}
'백준 문제 풀이 > 백준 (JAVA)' 카테고리의 다른 글
JAVA 백준 24262 알고리즘 수업 - 알고리즘의 수행 시간 1 (시간복잡도) (1) | 2024.07.01 |
---|---|
JAVA 백준 2941 크로아티아 알파벳 (0) | 2024.07.01 |
JAVA 백준 1546 평균 (0) | 2024.07.01 |
JAVA 백준 2525 오븐 시계 (0) | 2024.07.01 |
JAVA 백준 1000 A+B (0) | 2024.07.01 |