본문 바로가기

분류 전체보기101

백준 2869 달팽이 자바 java 아이디어 : 제한시간이 250ms로 매우 짧은것을 주의하자 제약사항 중 꼭대기에 오르면 ㄷ 이상 미끄러지지 않는다는 것을 생각하자 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 = new StringTokenizer(br... 2024. 1. 11.
백준 2292 벌집 자바 java import java.util.Scanner; public class Main { public static void main(String[] args) throws Exception { Scanner sc = new Scanner(System.in); int N = sc.nextInt(); // 도착할 방 번호를 저장하는 변수 int count = 1; // 방 개수를 셀 변순 1번방도 포함이므로 1로 시작 int num = 1; // 거쳐갈 방 개수가 1개늘어 날 때 마다 늘어나는 방 개수는 6*num+1이다. // 1씩 증가하는 변수를 위해사용 else { while(N > 1) { // N이 1일 경우 방의 개수는 1개이므로 1보다 큰 값일 때 반복문을 돌린다 N = (N) - (6 * num); .. 2024. 1. 11.
백준 11005 진법변환2 10진수를 N진법으로 java 자바 아이디어 : 1. StringBuilder을 이용하야 한글자 씩 답을 만들어나가 보자 2. 나머지가 10이 넘는 경우 대분자 알파벳으로 바꾸는 방법을 고려해 보자 import java.util.Scanner; public class Main { public static void main(String[] args) throws Exception { Scanner sc = new Scanner(System.in); int num = sc.nextInt(); // 변환할 숫자를 입력받음 int N = sc.nextInt(); // 변환할 진수를 입력받음 StringBuilder sb = new StringBuilder(); //진법 변환은 num을 N으로 나누는 것을 반복하고 역순으로 써야하는 특징이 있기에 .. 2024. 1. 11.
백준 2745 진법계산기 자바 java 아이디어 : 제곱을 나타나는 메소드, 숫자를 판별하는 방법을 주의해보자 import java.util.Scanner; public class Main { public static void main(String[] args) throws Exception { Scanner sc = new Scanner(System.in); String str = sc.next(); // 바꿀 수를 입력받음 int num = sc.nextInt(); // 몇진법으로 바꿀건지 입력받음 int sum = 0;//각 자릿수를 변환한 값을 합친 최종 값 for(int i = 0; i < str.length(); i++) { // 입력받은 문자열의 길이만큼 반복함으로서 자릿수마다 진법변환을 진행 char a = str.charAt(.. 2024. 1. 11.
백준 2563 색종이 자바 java 색종이 넓이를 구하는 문제이다. 복잡해 보이지만 겹치는 부분을 잘 생각하면 쉽게 해결할 수 있다. 아이디어 : 도화지를 100*100 이차원 배열로 생각해본다. 그 중 검은 색종이로 인해 채워진 부분만 다르게 나타내면 간단하게 면적을 구할 수 있다 import java.util.Scanner; public class Main { public static void main(String[] args) throws Exception { Scanner sc = new Scanner(System.in); int colorPaper = sc.nextInt(); //좌표를 입력받는 횟수 int arrT[][] = new int [100][100]; // 100*100 이차원 배열 생성 for(int i = 0; i .. 2024. 1. 10.
백준 1316 그룹단어 자바 java 이해가 조금 필요한 문제이다. 그룹 단어라는 특성을 먼저 파악한 후 특이한 케이스만 제거하는 방식으로 풀어가는 것이 좀 더 간단하다. 총 4가지 경우의 수가 있다. 1. i번째 단어와 i+1번째 단어가 다르며 이전에 등장하지 않은 경우. 2. i번째 단어와 i+1번째 단어가 다르며 이전에 등장한 경우. (특이한 경우 그룹단어가 아님) 3. i번째 단어와 i+1번째 단어가 같으며 이전에 등장하지 않은 경우. 4. i번째 단어와 i+1번째 단어가 다르며 이전에 등장한 경우. (특이한 경우 그룹 단어가 아님) 헷갈릴 수 있는 것이 닽은 단어가 연속으로 등장하는 경우이다. aaab와 같은 경우 이 부분은 그룹단어이므로 특이하지 않은 경우라고 생각하고 boolean 배열 a 자리를 true로만 바꿔주면 된다. 따.. 2024. 1. 10.