코딩테스트 & 알고리즘 및 기타/백준_알고리즘 - 단계별 풀이

[Java, 자바] 백준 알고리즘 - 단계별 풀기 (1단계)

정데브 2021. 5. 8. 01:40

안녕하세요~ 정데브입니다 😆

 

프로그램을 만들 때 중요한것이 무엇이라고 생각하시나요!! 저는 설계라 생각합니다!

어떠한 방식으로 효율적인 프로그램을 만들것인가를 생각하는것! 즉, 알고리즘을 잘 파악해야합니다😎

 

 

알고리즘을 공부해야하는 이유

- 프로그래밍 기술을 향상기키기 위함

- 효율적인 프로그램을 만들기 위해

- 좋은 프로그램을 만들기 위해

 

 

차근차근 백준의 알고리즘 문제를 풀어가면서 단순한 암기가 아닌 창의력을 요하는 퀴즈라 생각하며 스킬을 길러나갈 생각입니다! 

 

백준 알고리즘 링크

 

 

Baekjoon Online Judge

Baekjoon Online Judge 프로그래밍 문제를 풀고 온라인으로 채점받을 수 있는 곳입니다.

www.acmicpc.net

오늘은 1단계인 2557,10718,10171,10172,1000,1001,10998,1008,10869,10430,2588 총 11개의 문제를 풀이하도록 하겠습니다! 자세한 설명은 코드 안에서 진행되니 코드를 유심히 봐주시기 바래요~~😍

 

 

2557번 

  • Hello World!를 출력하시오.
package step1;


public class NO_1 {

	public static void main(String[] args) {
		System.out.println("Hello World!");
	}

}

 

 

10718번 

  • 두 줄에 걸쳐 "강한친구 대한육군"을 한 줄에 한 번씩 출력한다.
package step1;


public class NO_2 {

	public static void main(String[] args) {
		System.out.println("강한친구 대한육군");
		System.out.println("강한친구 대한육군");
	}

}

 

10171

  • 아래 예제와 같이 고양이를 출력하시오. 

package step1;


public class NO_3 {

	public static void main(String[] args) {
		System.out.println("\\    /\\");    //    \ 역슬레쉬를 출력하기 위해서는 \\ 두번 써야 함
		System.out.println(" )  ( ')");
		System.out.println("(  /  )");
		System.out.println(" \\(__)|");

	}

}

 

 

10172번

  • 아래 예제와 같이 개를 출력하시오. 

package step1;


public class NO_4 {

	public static void main(String[] args) {
		/* 10172번 
		 \ 역슬레쉬 출력은 \\ 두번 !!
		 " 따옴표 출력은 \" (역슬레시 따옴표!)
		 */
		System.out.println("|\\_/|");
		System.out.println("|q p|   /}");
		System.out.println("( 0 )\"\"\"\\");
		System.out.println("|\"^\"`    |");
		System.out.println("||_/=\\\\__|");
	}

}

 

 

1000번

  • 두 정수 A와 B를 입력받은 다음, A+B를 출력하는 프로그램을 작성하시오.
package step1;


import java.util.Scanner;

public class NO_5 {

	public static void main(String[] args) {
		Scanner in=new Scanner(System.in);
		int A=in.nextInt();
		int B=in.nextInt();
		
		System.out.println(A+B);
		
	}

}

 

 

 

1001번

  • 두 정수 A와 B를 입력받은 다음, A-B를 출력하는 프로그램을 작성하시오.
package step1;


import java.util.Scanner;

public class NO_6 {

	public static void main(String[] args) {
		Scanner in=new Scanner(System.in);
		int A=in.nextInt();
		int B=in.nextInt();
		
		System.out.println(A-B);
		
	}

}

 

 

10998번

  • 두 정수 A와 B를 입력받은 다음, A×B를 출력하는 프로그램을 작성하시오.
package step1;


import java.util.Scanner;

public class NO_7 {

	public static void main(String[] args) {
		Scanner in=new Scanner(System.in);
		int A=in.nextInt();
		int B=in.nextInt();
		
		System.out.println(A*B);
		
	}

}

 

 

1008번

  • 두 정수 A와 B를 입력받은 다음, A/B를 출력하는 프로그램을 작성하시오.
package step1;


import java.util.Scanner;

public class NO_8 {

	public static void main(String[] args) {
		Scanner in=new Scanner(System.in);
		double A=in.nextInt();
		double B=in.nextInt();
		
		System.out.println(A/B);
		
	}

}

 

 

 

10869번

  • 두 자연수 A와 B가 주어진다. 이때, A+B, A-B, A*B, A/B(몫), A%B(나머지)를 출력하는 프로그램을 작성하시오. 
  • 첫째 줄에 A+B, 둘째 줄에 A-B, 셋째 줄에 A*B, 넷째 줄에 A/B, 다섯째 줄에 A%B를 출력한다.
package step1;


import java.util.Scanner;

public class NO_9 {

	public static void main(String[] args) {
		Scanner in=new Scanner(System.in);
		int A=in.nextInt();
		int B=in.nextInt();
		
		System.out.println(A+B);
		System.out.println(A-B);
		System.out.println(A*B);
		System.out.println(A/B);
		System.out.println(A%B);
		
	}

}

 

 

10430번

  • (A+B)%C는 ((A%C) + (B%C))%C 와 같을까?
  • (A×B)%C는 ((A%C) × (B%C))%C 와 같을까?
  • 세 수 A, B, C가 주어졌을 때, 위의 네 가지 값을 구하는 프로그램을 작성하시오.
  • 첫째 줄에 (A+B)%C, 둘째 줄에 ((A%C) + (B%C))%C, 셋째 줄에 (A×B)%C, 넷째 줄에 ((A%C) × (B%C))%C를 출력
package step1;


import java.util.Scanner;

public class NO_10 {

	public static void main(String[] args) {

		Scanner in=new Scanner(System.in);
		int A=in.nextInt();
		int B=in.nextInt();
		int C=in.nextInt();
		
		//입력될 값 5,8,4
		System.out.println((A+B)%C); //5+8= 13, 13%4 =1
		System.out.println(((A%C) + (B%C))%C); //5%4  + 8%4 = 1 , 1%4=1
		System.out.println((A*B)%C);  //5*8 = 40 , 40%4=0
		System.out.println(((A%C) * (B%C))%C); //5%4  * 8%4 = 1*0 =0   , 0%4=0
	}

}

 

 

2588

  • (세 자리 수) × (세 자리 수)는 다음과 같은 과정을 통하여 이루어진다.
  • (1)과 (2)위치에 들어갈 세 자리 자연수가 주어질 때 (3), (4), (5), (6)위치에 들어갈 값을 구하는 프로그램을 작성하시오.

package step1;


import java.util.Scanner;

public class NO_11 {

	public static void main(String[] args) {		
		Scanner in=new Scanner(System.in);
		int a=in.nextInt();
		int b=in.nextInt();
		
		
		
		System.out.println(a*(b%10)); // 472*5   >> b를 10으로 나눈 나머지! 
		System.out.println(a*((b%100)/10));// 472*8   >> b를 100으로 나눈 후 10을 나눈 몫
		System.out.println(a*(b/100));// 472*3    >> b를 100으로 나눈 몫
		System.out.println(a*b);
		
	}

}