JAVA/Coding Test 80

[JAVA] 백준 10101 삼각형 외우기_기하

https://www.acmicpc.net/problem/10101 10101번: 삼각형 외우기 문제의 설명에 따라 Equilateral, Isosceles, Scalene, Error 중 하나를 출력한다. www.acmicpc.net 접근 : - 3개의 각을 입력받는다. - 입력받은 각이 모두 같고 합이 180 이면 Equilateral 출력 - 세각의 합이 180이고, 2개의 각이 같으면 Isosceles 출력 - 세각의 합이 180이고, 2개의 각이 서로다르면 Scalene 출력 - 세각의 합이 180 이 아니면, Error 출력 코드 구현 : import java.io.*; public class Main { public static void main(String[] srgs) throws IOE..

JAVA/Coding Test 2023.03.23

[JAVA] 백준 9063 대지_기하

https://www.acmicpc.net/problem/9063 9063번: 대지 첫째 줄에는 점의 개수 N (1 ≤ N ≤ 100,000) 이 주어진다. 이어지는 N 줄에는 각 점의 좌표가 두 개의 정수로 한 줄에 하나씩 주어진다. 각각의 좌표는 -10,000 이상 10,000 이하의 정수이다. www.acmicpc.net 접근 : - 좌표의 갯수 n 을 입력받는다. - x 좌표 최대/최소 , y 좌표 최대/최소 값을 구한다. - (Xmax - Xmin) * (Ymax-Ymin) 을 구해서 출력한다. 코드 구현 : import java.io.*; public class Main { public static void main(String[] srgs) throws IOException { Buffere..

JAVA/Coding Test 2023.03.23

[JAVA] 백준 15894 수학은 체육과목 입니다_기하

https://www.acmicpc.net/problem/15894 15894번: 수학은 체육과목 입니다 성원이는 수학을 정말 못 하는 고등학생이다. 수학을 못하는 대신 근성과 팔 힘이 뛰어난 성원이는 수학 시험에서 수학 지식을 사용하지 않고 근성과 체력을 사용해 문제를 푼다. 지난 시험에서 www.acmicpc.net 접근 : - 사각형의 갯수는 1부터 n까지 합한 갯수이다. - 사각형의 중복되는 부분은 1부터 n-1까지 합한 갯수이다. - 그러므로 사각형의 둘레의 길이는 4 X ( 1부터 n개 까지 합한 갯수) - 4 X ( 1부터 n-1 까지 합한 갯수)이다. - 4 X (1 부터 n-1) 는 서로 중복되면서 빼짐으로 0이되고, 결국 4n 만 남는다. - input이 10^9 이므로 long으로 받..

JAVA/Coding Test 2023.03.23

[JAVA] 백준 27323 직사각형_기하

https://www.acmicpc.net/problem/27323 27323번: 직사각형 정수 A, B 가 주어진다. 세로 길이가 A cm, 가로 길이가 B cm 인 아래와 같은 직사각형의 넓이를 cm2 단위로 구하시오. www.acmicpc.net 접근 : - 가로(B), 세로(A) 를 입력받는다. - A * B 연산하여 결과를 출력한다. 코드 구현 : import java.io.*; public class Main { public static void main(String[] srgs) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); // 결과 출력 System.out.print..

JAVA/Coding Test 2023.03.23

[JAVA] 백준 4779 컨토어집합_재귀함수

https://www.acmicpc.net/problem/4779 4779번: 칸토어 집합 칸토어 집합은 0과 1사이의 실수로 이루어진 집합으로, 구간 [0, 1]에서 시작해서 각 구간을 3등분하여 가운데 구간을 반복적으로 제외하는 방식으로 만든다. 전체 집합이 유한이라고 가정하고, www.acmicpc.net 접근 : - n 을 입력받는다. - 3^n 크기 만큼 - 문자를 연결한다. - 연결한 문자열을 1/3 ~ 2/3 길이 만큼 잘래내서 공백으로 바꾼다. - 앞 부분 0 ~ 1/3, 뒷부분 2/3 ~ n^3 에 대해서 같은 과정을 반복한다. - 1/3의 길이가 1 이하가 되면 더 이상 실행 할 수 없으므로 종료한다. 코드 구현 : import java.io.*; public class Main { s..

JAVA/Coding Test 2023.03.22

[JAVA] 백준 2580 스도쿠_백트래킹

https://www.acmicpc.net/problem/2580 2580번: 스도쿠 스도쿠는 18세기 스위스 수학자가 만든 '라틴 사각형'이랑 퍼즐에서 유래한 것으로 현재 많은 인기를 누리고 있다. 이 게임은 아래 그림과 같이 가로, 세로 각각 9개씩 총 81개의 작은 칸으로 이루 www.acmicpc.net 접근 : - 9X9 2차원 배열 형태의 숫자를 받는다.(board) - 숫자중 0 이 있으면 빈칸으로 간주하고 해당 하는 곳의 숫자를 탐색한다. - 숫자를 탐색할 때, 가로 ( ㅡ )한 줄에 중복되는 숫자가 존재하면 안된다. - 숫자를 탐색할 때, 세로( | ) 한 줄에 중복되는 숫자가 존재하면 안된다. - 숫자를 탐색할 때, 작은 사각형 (3X3)에 중복되는 숫자가 존재하면 안된다. - (0.0..

JAVA/Coding Test 2023.03.22

[JAVA] 백준 9663 N-Queen_백트래킹

https://www.acmicpc.net/problem/9663 9663번: N-QueenN-Queen 문제는 크기가 N × N인 체스판 위에 퀸 N개를 서로 공격할 수 없게 놓는 문제이다. N이 주어졌을 때, 퀸을 놓는 방법의 수를 구하는 프로그램을 작성하시오.www.acmicpc.net 접근 :   - N 의 크기를 받는다.  - 세로의 길이가 N 이므로 N개의 Queen을 놓기위해선 각 줄마다 1개의 Queen 이 존재해야 한다.  - Queen을 놓을 때, + 모양으로 겹치는 Queen이 있는지 확인한다.  - Queen을 놓을 때, x 모양으로 겹치는 Queen이 있는지 확인한다.  - Queen을 n 개 까지 놓으면 카운트를 1 증가 시킨다.  - depth = Queen의 갯수 = y 좌표..

JAVA/Coding Test 2023.03.17

[JAVA] 백준 15650 N과M(2)_백트래킹

https://www.acmicpc.net/problem/15650 15650번: N과 M (2)한 줄에 하나씩 문제의 조건을 만족하는 수열을 출력한다. 중복되는 수열을 여러 번 출력하면 안되며, 각 수열은 공백으로 구분해서 출력해야 한다. 수열은 사전 순으로 증가하는 순서로 출력해www.acmicpc.net  접근 :   - n 과 m 을 입력 받는다.  - 이전의 숫자를 보유(now)한다.  - Depth 를 내려갈 때, 이전의 숫자(now) +1 부터 수를 증가시킨다.   * 비오름차순을  코드에서, 위의 조건만 추가하면 된다. https://kjwit.tistory.com/entry/JAVA-%EB%B0%B1%EC%A4%80-15560-N%EA%B3%BCM-2%EB%B0%B1%ED%8A%B8%EB..

JAVA/Coding Test 2023.03.16

[JAVA] 백준 15560 N과M (4)_백트래킹

https://www.acmicpc.net/problem/15652 15652번: N과 M (4)한 줄에 하나씩 문제의 조건을 만족하는 수열을 출력한다. 중복되는 수열을 여러 번 출력하면 안되며, 각 수열은 공백으로 구분해서 출력해야 한다. 수열은 사전 순으로 증가하는 순서로 출력해www.acmicpc.net  접근 :   - N 과 M 을 입력 받는다.  - 이전의 숫자를 보유(now)한다.  - Depth 를 내려갈 때, 이전의 숫자(now) 부터 수를 증가시킨다.   * 비오름차순을 제외한 코드에서 for 루프를 돌 때, 위의 조건만 추가하면 된다. https://kjwit.tistory.com/entry/JAVA-%EB%B0%B1%EC%A4%80-15651-N%EA%B3%BC-M-3%EB%B0%B..

JAVA/Coding Test 2023.03.16

[JAVA] 백준 15650 N과 M (1)_백트래킹

https://www.acmicpc.net/problem/15650 15650번: N과 M (2)한 줄에 하나씩 문제의 조건을 만족하는 수열을 출력한다. 중복되는 수열을 여러 번 출력하면 안되며, 각 수열은 공백으로 구분해서 출력해야 한다. 수열은 사전 순으로 증가하는 순서로 출력해www.acmicpc.net 접근 :   -  최대 숫자 N 과 뽑는 갯수 M을 입력 받는다.  - 1 부터 N 까지 M 개를 뽑는다.  - 중복인 숫자는 뽑지 않는다.  - dfs 에서 depth를 내려갈 때, 중복인 숫자인 경우 더 이상 내려가지 않고 올라간다.   코드 구현 :   - 이너 클래스 사용import java.io.*;public class Main { static class Dfs { private Str..

JAVA/Coding Test 2023.03.09