반응형
'문제집'으로 보고 하다가 1064번에서 1085번으로 건너뛰어버렸다,,
뭔가 이상해서 '문제'로 봤더니 저렇게 되어 있네...
ㅋㅋㅋㅋㅋㅋㅋ1065번부터 다시 풀기,,,
🤍코드업(CodeUp) 기초100제 2.입출력문 및 연산자 1063,1064,1085,1086 자바(JAVA)로 풀기🤍
문제 1065. 정수 3개 입력받아 짝수만 출력하기
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
int a = scanner.nextInt();
int b = scanner.nextInt();
int c = scanner.nextInt();
if(a%2==0)
System.out.println(a);
if(b%2==0)
System.out.println(b);
if(c%2==0)
System.out.println(c);
}
}
문제 1066. 정수 3개 입력받아 짝/홀 출력하기
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
int a = scanner.nextInt();
int b = scanner.nextInt();
int c = scanner.nextInt();
if(a%2==0)
System.out.println("even");
else if(a%2==1)
System.out.println("odd");
if(b%2==0)
System.out.println("even");
else if(b%2==1)
System.out.println("odd");
if(c%2==0)
System.out.println("even");
else if(c%2==1)
System.out.println("odd");
}
}
문제 1067. 정수 1개 입력받아 분석하기
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
int a = scanner.nextInt();
if(a>0) {
System.out.println("plus");
}else {
System.out.println("minus");
}
if(a%2==0) {
System.out.println("even");
}else {
System.out.println("odd");
}
}
}
문제 1068. 정수 1개 입력받아 평가 출력하기
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
int a = scanner.nextInt();
if(a>=90 && a<=100) {
System.out.println("A");
}else if(a>=70 && a<=89) {
System.out.println("B");
}
else if(a>=40 && a<=69) {
System.out.println("C");
}else if(a>=0 && a<=39) {
System.out.println("D");
}
}
}
문제 1069. 평가 입력받아 다르게 출력하기
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
String result = scanner.next();
switch(result.toUpperCase()) {
case "A":
System.out.println("best!!!");
break;
case "B":
System.out.println("good!!");
break;
case "C":
System.out.println("run!");
break;
case "D":
System.out.println("slowly~");
break;
default:
System.out.println("what?");
break;
}
}
}
문제 1070. 월 입력받아 계절 출력하기
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
String result = scanner.next();
int month = Integer.parseInt(result);
switch(month) {
case 12: case 1: case 2:
System.out.println("winter");
break;
case 3: case 4: case 5:
System.out.println("spring");
break;
case 6: case 7: case 8:
System.out.println("summer");
break;
case 9: case 10: case 11:
System.out.println("fall");
break;
}
}
}
문제 1071. 0이 입력될 때까지 무한 출력하기
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
while(true) {
int a = scanner.nextInt();
if(a==0)
break;
System.out.println(a);
}
}
}
문제 1072. 정수 입력받아 계속 출력하기
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
int a = scanner.nextInt();
int[] b = new int[a];
for(int i=0; i<b.length; i++) {
b[i] = scanner.nextInt();
}
for(int i=0; i<b.length; i++) {
System.out.println(b[i]);
}
}
}
문제 1073. 0이 입력될 때까지 무한 출력하기
import java.util.ArrayList;
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
ArrayList<Integer> nums = new ArrayList<>();
int num;
while(true) {
num = scanner.nextInt();
nums.add(num);
if(num==0)
break;
System.out.println(num);
}
}
}
문제 1074. 정수 1개 입력받아 카운트다운 출력하기
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
int a = scanner.nextInt();
for(int i=a; i>0; i--) {
System.out.println(i);
}
}
}
문제 1075. 정수 1개 입력받아 카운트다운 출력하기2
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
int a = scanner.nextInt();
for(int i=a-1; i>=0; i--) {
System.out.println(i);
}
}
}
문제 1076. 문자 1개 입력받아 알파벳 출력하기
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
char a=scanner.nextLine().charAt(0);
for(char i='a'; i<=a; i++) {
System.out.print(i+" ");
}
}
}
왜자꾸 표현 에러라는거야!!!겨우 냈네...
문제 1077. 정수 1개 입력받아 그 수까지 출력하기
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
int a = scanner.nextInt();
for(int i=0; i<=a; i++) {
System.out.println(i);
}
}
}
문제 1078. 짝수 합 구하기
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
int a = scanner.nextInt();
int sum=0;
for(int i=1; i<=a; i++) {
if(i%2==0) {
sum+=i;
}
}
System.out.print(sum);
}
}
문제 1079. 원하는 문자(q)가 입력될 때까지 반복 출력하기
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
while(true) {
char a =scanner.next().charAt(0);
if(a=='q') {
System.out.println(a);
break;
}
System.out.println(a);
}
}
}
문제 1080. 언제까지 더해야 할까?
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
int a=scanner.nextInt();
int sum=0;
int cnt=0;
if(a>=0 && a<=1000) {
while(sum<a) {
cnt++;
sum+=cnt;
}
}
System.out.println(cnt);
}
}
문제 1081. 주사위를 2개 던지면?
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
int a=scanner.nextInt();
int b=scanner.nextInt();
for(int i=1; i<=a; i++) {
for(int j=1; j<=b; j++) {
System.out.println(i+" "+j);
}
}
}
}
문제 1082. 16진수 구구단
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
int a = scanner.nextInt(16); //16진수
for(int i=1; i<16; i++) {
System.out.printf("%X*%X=%X\n",a,i,a*i);
}
}
}
문제 1083. 3 6 9 게임
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
int a = scanner.nextInt();
for(int i=1; i<=a; i++) {
if(i%3==0) {
System.out.print("X ");
}else if(i%3 !=0) {
System.out.print(i+" ");
}
}
}
}
문제 1084. 빛 섞어 색 만들기
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
int r=scanner.nextInt();
int g=scanner.nextInt();
int b=scanner.nextInt();
int cnt=0;
for(int i=0;i<r;i++) {
for(int j=0;j<g;j++) {
for(int x=0;x<b;x++) {
System.out.printf("%d %d %d\n",i,j,x);
cnt+=1;
}
}
}
System.out.println(cnt);
}
}
위와 같이 하면 시간 초과 에러가 난다.
코드에 문제는 없지만
System.out.println(); 이 속도가 매우 느리기 때문이다!!
🤍BufferReader, BufferWriter 클래스를 이용해 입출력을 받으면
시간 초과를 해결할 수 있다는 사실을 알게 되었다.
수정 코드
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
public class Main {
public static void main(String[] args){
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
try {
String[] a = br.readLine().split(" ");
int cnt = 0;
BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out));
for(int i=0; i<Integer.valueOf(a[0]); i++) {
for(int j=0; j<Integer.valueOf(a[1]); j++) {
for(int k=0; k<Integer.valueOf(a[2]); k++) {
bw.write(i+" "+j+" "+k+"\n");
cnt++;
}
}
}
bw.write(String.valueOf(cnt));
bw.flush();
}catch (NumberFormatException e) {
e.printStackTrace();
}catch (IOException e) {
e.printStackTrace();
}
}
}
반응형
'💻 my code archive > 🗝️Algorithm' 카테고리의 다른 글
[코딩테스트 연습, 프로그래머스, Java] - 신규 아이디 추천 (0) | 2022.04.08 |
---|---|
[코드업/자바] JAVA 기초-종합 수 나열하기:: 1087~1091 (0) | 2022.02.10 |
[코드업/자바] 기초 100제 2.입출력문 및 연산자 :: 1063,1064,1085,1086 (0) | 2022.02.09 |
[코드업/자바] 기초 100제 2.입출력문 및 연산자 :: 1047~1062 (0) | 2022.02.09 |
[코드업/자바] 기초 100제 2.입출력문 및 연산자 :: 1041~1046 (0) | 2022.02.09 |