일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
- 리눅스마스터 1급 정리
- Kotlin
- 연습문제
- 명령어
- 스프링 빈
- Java
- 자바
- map
- 카카오
- 월간코드챌린지
- 반복문
- Linux
- 코테
- GoingBus
- JavaScript
- java 백준 1차원 배열
- 코딩테스트
- toCharArray
- 리눅스마스터1급
- 백준 javascript
- 자바스크립트 코딩의 기술
- 스프링 컨테이너
- Memoir
- 리눅스
- 고잉버스
- 개발자 회고록
- 리눅스마스터 3과목
- 문자열
- 프로그래머스
- 백준 java
- Today
- Total
hoon DevLog
백준 Java 반복문 2739, 10950, 8393, 25304, 25314, 15552, 11021, 11022, 2438, 2439, 10952, 10951 본문
백준 Java 반복문 2739, 10950, 8393, 25304, 25314, 15552, 11021, 11022, 2438, 2439, 10952, 10951
개발한기발자 2023. 4. 10. 09:44
문제출처 : https://www.acmicpc.net/step/3
반복문 단계
코딩 공부를 잘 하여 이렇게 long long long long...을 칠판에 적는 일이 없도록 합시다.
www.acmicpc.net
이번 포스팅은 반복문!
반복문 역시 난이도는 ★!
총 12문제 Get it!!!
[2739] 구구단
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int a = sc.nextInt();
sc.close();
for (int i = 1; i < 10; i++) {
System.out.println(a+" * "+i+" = "+ a*i);
}
}
}
[10950] A+B - 3
import java.util.Scanner;
public class Main{
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int c = sc.nextInt();
for (int i = 0; i < c; i++) {
int a = sc.nextInt();
int b = sc.nextInt();
System.out.println(a+b);
}
sc.close();
}
}
[8393] 합
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int a = sc.nextInt();
sc.close();
System.out.println(a*(a+1)/2);
}
}
[25304] 영수증 성공
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.StringTokenizer;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
StringTokenizer st;
int X = Integer.parseInt(br.readLine());
int N = Integer.parseInt(br.readLine());
int total = 0;
for (int i = 0; i < N; i++) {
st = new StringTokenizer(br.readLine());
total += Integer.parseInt(st.nextToken()) * Integer.parseInt(st.nextToken());
}
if (X == total)
System.out.println("Yes");
else
System.out.println("No");
}
}
[25314] 코딩은 체육과목입니다
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
public class Main {
public static void main(String[] args) throws Exception {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
int n = Integer.parseInt(br.readLine());
StringBuilder sb = new StringBuilder();
for (int i = 0; i < n / 4; i++) {
sb.append("long ");
}
br.close();
sb.append("int");
System.out.println(sb);
}
}
[15552] 빠른 A+B
import java.io.*;
import java.util.StringTokenizer;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out));
// BufferedReader.readLine() 으로 입력 받음.
int N = Integer.parseInt(br.readLine());
// 각 StringTokenizer 의 토큰 (분리되어있는 문자)을 반환
// 반환되는 타입은 String 이므로 Integer.parseInt를 통해 int형으로 변환
StringTokenizer st;
for (int i = 0; i < N; i++) {
// 주어지는 두 정수는 문자열 분리를 위해 매 반복마다 StringTokenizer 을 생성과 동시에 문자를 입력받음
st = new StringTokenizer(br.readLine()," ");
// 바꾼 두 토큰을 더해준 값을 BufferedWriter.write() 추가
bw.write((Integer.parseInt(st.nextToken()) + Integer.parseInt(st.nextToken()))+ "\n");
}
//거의 필수적으로 버퍼를 비운 뒤(flush) 닫아줘야함(close).
br.close();
bw.flush();
bw.close();
}
}
[11021] A+B - 7
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
int N = Integer.parseInt(br.readLine());
StringBuilder sb = new StringBuilder();
for (int i = 1; i <= N; i++) {
String str = br.readLine();
int target = str.indexOf(" ");
int result = Integer.parseInt(str.substring(0,target)) + Integer.parseInt(str.substring(target + 1));
sb.append("Case #"+ i + ": " + result+"\n");
}
br.close();
System.out.println(sb);
}
}
[11022] A+B - 8
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
int N = Integer.parseInt(br.readLine());
StringBuilder sb = new StringBuilder();
for (int i = 1; i <= N; i++) {
String str = br.readLine();
int target = str.indexOf(" ");
int result = Integer.parseInt(str.substring(0,target)) + Integer.parseInt(str.substring(target + 1));
sb.append("Case #"+ i + ": " +str.substring(0,target)+ " + " +str.substring(target + 1)+ " = " + result+"\n");
}
br.close();
System.out.println(sb);
}
}
[2438] 별 찍기 - 1
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
StringBuilder sb = new StringBuilder();
int a = Integer.parseInt(br.readLine());
for(int i = 0; i < a; i++) {
for(int j = 0; j < i + 1; j++) {
sb.append("*");
}
sb.append("\n");
}
br.close();
System.out.println(sb);
}
}
[2439] 별 찍기 - 2
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
StringBuilder sb = new StringBuilder();
int a = Integer.parseInt(br.readLine());
for(int i = 1; i <= a; i++) {
for(int j = 0; j < a-i; j++) {
sb.append(" ");
}
for (int k = 1; k <= i; k++) {
sb.append("*");
}
sb.append("\n");
}
br.close();
System.out.print(sb);
}
}
[10952] A+B - 5
import java.io.BufferedReader;
import java.io.InputStreamReader;
public class Main {
public static void main(String[] args) throws Exception {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
StringBuilder sb = new StringBuilder();
while(true){
String str = br.readLine();
int target = str.indexOf(" ");
int result = 0;
if (str.substring(0,target).equals("0") && str.substring(target+1).equals("0")){
break;
}else result = Integer.parseInt(str.substring(0,target)) + Integer.parseInt(str.substring(target + 1));
sb.append(result+"\n");
}
br.close();
System.out.print(sb);
}
}
[10951] A+B - 4
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.io.IOException;
import java.util.StringTokenizer;
public class Main {
public static void main(String args[]) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
StringBuilder sb = new StringBuilder();
StringTokenizer st;
String str;
while( (str=br.readLine()) != null ){
st = new StringTokenizer(str," ");
int a = Integer.parseInt(st.nextToken());
int b = Integer.parseInt(st.nextToken());
sb.append(a+b).append("\n");
}
br.close();
System.out.print(sb);
}
}
언뜻 코드가 복잡해 보이지만, 로직상으로 크게 깊게 생각해야 하거나 복잡한 부분은 없었다.
다만 입출력 시 BufferedReader, BufferedWriter, StringBuilder, StringTokenizer 등을 사용하다 보니,
소스가 다소 생소하게 느껴질 수 있다.(라고 나는 처음에 생각이 들었었다...ㅠㅠ)
왜 출력을 이렇게 했는가? 의 부분은 백준 문제 풀이 시 주의 할 점 포스팅을 참고하면 되겠다.
반복문에서 특히 구구단이나, 별 찍기 로직 구성은 단골 중에 단골이니, 익숙해지면 좋을 듯하다.
만약 여기서 막히고 어렵다면?!!?!?
아래 링크에서 조건문에 대해서 다시 알아보고 오시면 좋을 듯!
조건문과 반복문 : https://psip31.tistory.com/7
[Java] 제어문(조건문, 반복문)
안녕하세요. 이번 포스팅은 제어문에 대해서 알아보도록 하겠습니다. 제어문은 크게 조건문, 반복문으로 나뉩니다. 조건문 : 조건식과 문장으로 구성(주로 if, switch case문) 반복문 : 반복적인 작
psip31.tistory.com
'코딩테스트 > 백준' 카테고리의 다른 글
백준 Java & Javascript 1차원 배열 2562, 10810 (0) | 2023.07.26 |
---|---|
백준 Java & Javascript 1차원 배열 10807, 10871, 10818 (0) | 2023.07.19 |
백준 Java 백준 문제 풀이 시 주의 해야할 점 (1) | 2023.03.10 |
백준 Java 조건문 1330, 9498, 2753, 14681, 2884, 2525, 2480 (2) | 2023.03.08 |
백준 입출력과 사칙연산 Java (4) | 2023.02.27 |