코드업 기초 100제 (8)
업데이트:
[1071] 0 입력될 때까지 무한 출력하기1
[입력] 7 4 2 3 0 1 5 6 9 10 8
[출력]
7
4
2
3
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
while(true) {
int num = sc.nextInt();
if (num == 0)
break;
else
System.out.println(num);
}
}
}
[1072] 정수 입력받아 계속 출력하기
[입력]
5
1 2 3 4 5
[출력]
1
2
3
4
5
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int num1 = sc.nextInt();
int[] num = new int[num1];
for (int i = 0; i < num.length; i++) {
num[i] = sc.nextInt();
System.out.println(num[i]);
}
}
}
[1073] 0 입력될 때까지 무한 출력하기2
[입력] 7 4 2 3 0 1 5 6 9 10 8
[출력]
7
4
2
3
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
while(true) {
int num = sc.nextInt();
if (num == 0)
break;
else
System.out.println(num);
}
}
}
[1074] 정수 1개 입력받아 카운트다운 출력하기1
[입력] 5
[출력]
5
4
3
2
1
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int num = sc.nextInt();
while(num > 0) {
System.out.println(num--);
}
}
}
[1075] 정수 1개 입력받아 카운트다운 출력하기2
[입력] 5
[출력]
4
3
2
1
0
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int num = sc.nextInt();
while(num > 0) {
System.out.println(--num);
}
}
}
[1076] 문자 1개 입력받아 알파벳 출력하기
[입력] f
[출력] a b c d e f
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
char a = sc.next().charAt(0);
char b = 'a';
while (b <= a) {
System.out.printf("%c ", b++);
}
}
}
[1077] 정수 1개 입력받아 그 수까지 출력하기
[입력] 4
[출력]
0
1
2
3
4
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int num1 = sc.nextInt();
int num2 = 0;
while (num2 <= num1) {
System.out.println(num2++);
}
}
}
[1078] 짝수 합 구하기
[입력] 5
[출력] 6
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int num1 = sc.nextInt();
int sum = 0;
for(int i = 0; i <= num1; i++) {
if (i % 2 == 0)
sum+= i;
}
System.out.print(sum);
}
}
[1079] 원하는 문자(q)가 입력될 때까지 반복 출력하기
[입력] x b k d l q g a c
[출력]
x
b
k
d
l
q
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
while(true) {
char input = sc.next().charAt(0);
System.out.println(input);
if (input == 'q')
break;
}
}
}
[1080] 언제까지 더해야 할까?
[입력] 55
[출력] 10
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int num = sc.nextInt();
int sum = 0;
for(int i = 0; i <= num; i++) {
sum += i;
if (sum >= num) {
System.out.print(i);
break;
}
}
}
}
[1081] 주사위를 2개 던지면?
[입력] 2 3
[출력]
1 1
1 2
1 3
2 1
2 2
2 3
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int num1 = sc.nextInt();
int num2 = sc.nextInt();
for(int i = 1; i <= num1; i++) {
for(int j = 1; j <= num2; j++) {
System.out.printf("%d %d\n", i, j);
}
}
}
}
[1082] 16진수 구구단?
[입력] B
[출력]
B*1=B
B*2=16
B*3=21
B*4=2C
B*5=37
B*6=42
B*7=4D
B*8=58
B*9=63
B*A=6E
B*B=79
B*C=84
B*D=8F
B*E=9A
B*F=A5
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int gugu = sc.nextInt(16);
for (int i = 1; i <= 15; i++) {
System.out.printf("%X*%X=%X\n", gugu, i, gugu * i);
}
}
}
[1083] 3 6 9 게임의 왕이 되자!
[입력] 9
[출력] 1 2 X 4 5 X 7 8 X
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int num = sc.nextInt();
for (int i = 1; i <= num; i++) {
if (i % 3 == 0)
System.out.print("X ");
else
System.out.print(i + " ");
}
}
}
[1084] 빛 섞어 색 만들기
[입력] 2 2 2
[출력]
0 0 0
0 0 1
0 1 0
0 1 1
1 0 0
1 0 1
1 1 0
1 1 1
8
//타임 아웃
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int r = sc.nextInt();
int g = sc.nextInt();
int b = sc.nextInt();
int count = 0;
for(int i = 0; i < r; i++) {
for(int j = 0; j < g; j++) {
for(int k = 0; k < b; k++) {
System.out.printf("%d %d %d\n", i, j, k);
count++;
}
}
}
System.out.print(count);
}
}
이클립스에서는 정답과 일치하는데 코드업에 제출하니 시간 초과로 통과하지 못했다. 그래서 sc.nextInt() 부분을 배열로 바꿔서 제출했는데 역시 시간 초과.. 구글에 검색해도 나랑 비슷한 코드 밖에 없어서 답을 못 찾던 중 코드업 1084 문제 하단 ‘묻고 답하기’에 시간 초과로 질문을 올린 사람이 있어 들어가봤더니 정답 코드가 있었다..! 정답 코드는 밑의 링크를 참고하면 된다.
코드업 1084 묻고 답하기
[1085] 소리 파일 저장용량 계산하기
[입력] 44100 16 2 10
[출력] 1.7 MB
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
double h = sc.nextDouble();
double b = sc.nextDouble();
double c = sc.nextDouble();
double s = sc.nextDouble();
double mb = ((h * b * c * s) / 8) / 1024 / 1024;
System.out.printf("%.1f MB", mb);
}
}
댓글남기기