Algorithm (9) 썸네일형 리스트형 [Java] 백준 1018번 문제 '체스판 다시 칠하기' 풀이 이번 문제도 브루트 포스 문제입니다 일단 문제 먼저 보시겠습니다 https://www.acmicpc.net/problem/1018 1018번: 체스판 다시 칠하기 첫째 줄에 N과 M이 주어진다. N과 M은 8보다 크거나 같고, 50보다 작거나 같은 자연수이다. 둘째 줄부터 N개의 줄에는 보드의 각 행의 상태가 주어진다. B는 검은색이며, W는 흰색이다. www.acmicpc.net 문제를 보면 그냥 탐색해서 비교만 하면 될 것 같지만 MxN의 넓은 보드에서 8x8만큼의 체스판 크기로 뽑은 다음 하나하나 비교를 해봐야합니다 그래서 저는 for문을 4개나 쓰는 방법을 생각했습니다 (다른 방법이 있으신 분들은 댓글로 알려주시면 감사하겠습니다!!!) 그리고 문제에서 힌트를 하나 발견했습니다 바로 '체스판을 칠하.. [Java] 백준 2231번 문제 '분해합' 풀이 안녕하세요!! 백준 단계별 알고리즘 중 브루트 포스 문제인 분해합 문제를 풀어봤습니다 일단 문제부터 보시죠!! https://www.acmicpc.net/problem/2231 2231번: 분해합 어떤 자연수 N이 있을 때, 그 자연수 N의 분해합은 N과 N을 이루는 각 자리수의 합을 의미한다. 어떤 자연수 M의 분해합이 N인 경우, M을 N의 생성자라 한다. 예를 들어, 245의 분해합은 256(=245+2+4+5)이 www.acmicpc.net 맨 처음에는 분해합이 무슨 소리인가 했어요ㅋㅋㅋ 예를 들어 256이라는 수가 있는데 256은 245에서 2, 4, 5를 더하면 나오는 값입니다 여기서 2, 4, 5는 245의 자릿수입니다 그래서 저는 반복문을 사용해서 쉽게 문제를 풀었습니다 import jav.. [Java] 백준 7568문제 '덩치' 풀이 브루트 포스 문제에 있는 '덩치'라는 문제의 풀이입니다 일단 문제부터 보겠습니다 https://www.acmicpc.net/problem/7568 7568번: 덩치 우리는 사람의 덩치를 키와 몸무게, 이 두 개의 값으로 표현하여 그 등수를 매겨보려고 한다. 어떤 사람의 몸무게가 x kg이고 키가 y cm라면 이 사람의 덩치는 (x, y)로 표시된다. 두 사람 A 와 B의 덩 www.acmicpc.net 그렇게 어려운 문제는 아닙니다 그래서 저는 배열을 사용해서 풀었습니다 이 문제에서 생각해봐야 하는 부분은 A와 B라는 사람이 있을 때 (A의 몸무게) > (B의 몸무게) 이지만 (A의 키) < (B의 키)일때는 A와 B가 같은 순위로 취급한다는 것입니다 하지만 이 말을 바꿔서 말하면 몸무게와 키 둘 다 자.. [Java] 백준 1032번 문제 명령 프롬프트 일단 문제부터 보겠습니다 https://www.acmicpc.net/problem/1032 1032번: 명령 프롬프트 첫째 줄에 파일 이름의 개수 N이 주어진다. 둘째 줄부터 N개의 줄에는 파일 이름이 주어진다. N은 50보다 작거나 같은 자연수이고 파일 이름의 길이는 모두 같고 길이는 최대 50이다. 파일이름은 www.acmicpc.net 문제를 요약하면 입력할 파일의 개수를 입력하고 그다음 동일한 길이의 파일명을 입력하면 모든 파일명 중에서 같은 글자인 부분은 그대로 나오고 다른 부분은 '?'로 나오게 하면 됩니다 여기서 동일한 길이의 파일명이 아니라면 좀 귀찮았을 것 같네요 일단 코드를 먼저 보겠습니다 import java.util.Scanner; public class Main { public s.. [Java]백준 1193번 문제 '분수 찾기' 저는 요즘 쉬운 알고리즘 문제를 찾아서 하고 있습니다 거부감이나 두려움??그런 것들을 없애기 위해 쉬운 문제부터 풀고 있습니다 예전에 제가 수학을 못 할때 쉬운 문제를 풀면서 멘탈을 잡았 거든요 그래서 그 느낌으로 풀었습니다 이 문제도 쉬운 문제입니다 https://www.acmicpc.net/problem/1193 1193번: 분수찾기 첫째 줄에 X(1 ≤ X ≤ 10,000,000)가 주어진다. www.acmicpc.net 이 문제는 일단 지그재그라는 특성과 사선으로 분모와 분자가 증가하거나 감소한다는 특성이 있습니다 일단 지그재그를 풀어보자면, 첫번째 세로 줄을 기준으로 분자가 짝수이면 사선이 밑으로 가고, 홀수이면 위로 올라가는 사선입니다 import java.util.Scanner; public.. [Java] 백준 2869번 문제 '달팽이는 올라가고 싶다' 안녕하세요 '달팽이는 올라가고 싶다'라는 문제를 Java로 풀어봤습니다 이 문제는 제가 아까 포스팅 한 문제에도 설명을 했지만 BufferedReader를 사용해야 하는 문제입니다 왜냐하면 시간이 많이 촉박한 문제이기 때문입니다 일단 문제를 보여드리겠습니다 https://www.acmicpc.net/problem/2869 2869번: 달팽이는 올라가고 싶다 첫째 줄에 세 정수 A, B, V가 공백으로 구분되어서 주어진다. (1 ≤ B < A ≤ V ≤ 1,000,000,000) www.acmicpc.net 문제를 요약해보면 한 달팽이는 높이가 V인 나무 막대를 올라갈 것인데 낯에는 A만큼 올라가지만 밤에는 B만큼 미끄러진다 달팽이가 V에 도착하려면 며칠이 걸리는지 구하는 문제입니다 이 문제에서 함정을 찾.. [Java] 백준 1152 단어의 갯수 문제 풀이 1152번 '단어의 개수' 문제 풀이입니다 BufferedReader와 StringTokenizer를 사용하면 바로 풀 수 있는 문제입니다. BufferedReader는 문자열을 입력받을 때 buffer를 사용해서 받습니다 이것은 Scanner 방식보다 빠르다고 합니다 제가 방금 푼 문제도 Scanner를 사용하지 않고 BufferedReader를 사용해야 풀 수 있었습니다 그리고 BufferedReader를 사용해서 받은 문자열을 띄어쓰기를 기준으로 나눠줘야 합니다 그래야 단어의 개수를 알 수 있습니다 그렇게 나눠지면 나눠진 단위를 토큰이라고 합니다 그럼 그 토큰들의 개수를 알면 됩니다 하지만 countToken이라는 편안한 메서드가 있기 때문에 따로 계산을 하지 않고 countToken만 출력해줘도 .. [백준 2292번] 벌집 문제 Java 풀이 안녕하세요!!!오늘은 제가 풀었던 백준 문제 중 머리 푸는 용도로 풀었던 문제를 소개시켜드리고 풀이를 보여드리겠습니다 사진을 보시면 가운데 1을 둘러싸면서 번호가 매겨집니다 그래서 만약 입력으로 숫자가 들어오면 그 숫자가 매겨진 방에서 1번까지 가려면 몇 개의 방을 거쳐야 하는지 나오는 문제입니다 (자기가 있는 방과 1번 방도 포함합니다!!!) 사진을 보고 딱 드는 생각은 계차수열입니다 계차수열은 수열간의 차이가 등차수열인 수열입니다 이 사진을 보시면 제가 그림판으로 선을 그렸습니다 빨간 선 중에서 가장 큰 값을 나열해보면(1을 첫째 항으로 합니다) 1, 7, 19, 37, 61, ...입니다 앞과 뒤에 있는 숫자들을 빼보면 6, 12, 18, 24, ...이렇게 6씩 늘어나는 등차수열이 나옵니다 그래서.. 이전 1 2 다음