반응형
안녕하세요! Plitche(플리체)입니다.
이번 포스팅의 주제는 Q1204 : 영어 서수로 표현하기 (자바, JAVA)입니다.
intro
Question
문제 설명
입력
1~99 중 한 정수가 입력된다.
출력
입력된 정수의 영어 서수 표현을 출력한다.
예시
- 입력 : 2
- 출력 : 2nd
Solution (풀이)
- 풀이 1 : 메모리 11196, 시간 104
public class Answer1 {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
StringBuilder sb = new StringBuilder();
int number = Integer.parseInt(br.readLine());
// 10단위는 서수가 다르기 때문에 주의해야 한다.
if (number/10 == 1) {
sb.append(number+"th");
} else {
if (number%10 == 1) {
sb.append(number+"st");
} else if (number%10 == 2) {
sb.append(number+"nd");
} else if (number%10 == 3) {
sb.append(number+"rd");
} else {
sb.append(number+"th");
}
}
System.out.println(sb);
br.close();
}
}
- 풀이 2 : 메모리 11172, 시간 68
public class Answer2 {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
StringBuilder sb = new StringBuilder();
int number = Integer.parseInt(br.readLine());
// 10단위는 서수가 다르기 때문에 주의해야 한다.
if (number/10 == 1) {
sb.append(number+"th");
} else {
// 1~99까지 입력되기 때문에 10으로 나눈 나머지를 기준으로 계산한다.
switch (number%10) {
case 1 : sb.append(number+"st"); break;
case 2 : sb.append(number+"nd"); break;
case 3 : sb.append(number+"rd"); break;
default: sb.append(number+"th");
}
}
System.out.print(sb);
br.close();
}
}
Ranking(순위)
반응형
'Algorithm > CodeUp' 카테고리의 다른 글
[CodeUp_Java] Q1207 : 윷놀이 (0) | 2022.05.31 |
---|---|
[CodeUp_Java] Q1206 : 배수 (0) | 2022.05.09 |
[CodeUp_Java] Q1180 : 만능 휴지통 (0) | 2022.05.09 |
[CodeUp_Java] Q1174 : 30분 전 (if는 아직...) (0) | 2022.05.09 |
[CodeUp_Java] Q1173 : 30분 (0) | 2022.05.03 |