본문 바로가기

전체 글44

백준- 1987 알파벳 www.acmicpc.net/problem/1987 1987번: 알파벳 세로 R칸, 가로 C칸으로 된 표 모양의 보드가 있다. 보드의 각 칸에는 대문자 알파벳이 하나씩 적혀 있고, 좌측 상단 칸 (1행 1열) 에는 말이 놓여 있다. 말은 상하좌우로 인접한 네 칸 중의 한 칸으 www.acmicpc.net 같은 알파벳을 두번 지날수 없다 -> DFS로 탐색. String값을 들고다니며 contains메소드로 지나온 문자열을 체크해주려고 했음 결과: 메모리 초과 지금 생각해보면 String값은 매번 새로 복사해서 새로운주소에 저장해주어야하므로 메모리를 많이 쓸것 같았는데 역시나 통과가 안됐다. 방문배열, 방문알파벳 배열을 사용하여 DFS탐색함. import java.util.Arrays; import jav.. 2021. 2. 19.
백준- 15686 치킨 배달 www.acmicpc.net/problem/15686 15686번: 치킨 배달 크기가 N×N인 도시가 있다. 도시는 1×1크기의 칸으로 나누어져 있다. 도시의 각 칸은 빈 칸, 치킨집, 집 중 하나이다. 도시의 칸은 (r, c)와 같은 형태로 나타내고, r행 c열 또는 위에서부터 r번째 칸 www.acmicpc.net 치킨집들중 M개를 골라 치킨 거리의 최솟값을 구하는 문제-> 조합 풀이1. 조합 ** 주의 ** 치킨집, 집의 수가 일정하게 주어지는게 아님-> ArrayList 이용!!! 배열로 풀다가 몇시간 날렸다.ㅋ 단, 리스트로 삽입할 시 **백트레킹** 필요하다. ////BJ 치킨배달 ///* // * 집,치킨집이 갖고있어야할것: 좌표 r,c // * 도시의치킨거리=모든치킨거리 합 // * 집의치.. 2021. 2. 18.
백준 -2567 색종이2 https://www.acmicpc.net/problem/2567 2567번: 색종이 - 2 가로, 세로의 크기가 각각 100인 정사각형 모양의 흰색 도화지가 있다. 이 도화지 위에 가로, 세로의 크기가 각각 10인 정사각형 모양의 검은색 색종이를 색종이의 변과 도화지의 변이 평행하도록 www.acmicpc.net 풀이 1 x,y 좌표값을 계산해서 배열에 배정함 ** 주의 ** 배열의 값을 계산해서 지정할것이기때문에 배열의기존크기를 늘려줬다면 배열의 계산식도 조정 필요 100->102 90-y ~ 100-y -> 92-y ~ 102-y import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner .. 2021. 2. 17.
백준 -14891 톱니바퀴 www.acmicpc.net/problem/14891 14891번: 톱니바퀴 총 8개의 톱니를 가지고 있는 톱니바퀴 4개가 아래 그림과 같이 일렬로 놓여져 있다. 또, 톱니는 N극 또는 S극 중 하나를 나타내고 있다. 톱니바퀴에는 번호가 매겨져 있는데, 가장 왼쪽 톱니바퀴 www.acmicpc.net 메소드별 역할을 설계해서 재귀로 풀었다. roll() : 톱니 회전 right() : 오른쪽 톱니 체크후 쉬프트 letf() : 왼쪽 톱니 체크후 쉬프트 swap() : 쉬프트 check() : 최종 톱니상태 점수 출력 print() : 톱니 출력 * 주의 * 왼쪽, 오른쪽 톱니의 상태를 비교 후 자신의 톱니상태를 변경해주어야 함. -그렇지않으면 자신의 톱니상태가 변경된 후 왼쪽,오른쪽을 비교하게 되므로 틀.. 2021. 2. 16.
백준 3040 백설 공주와 일곱 난쟁이 www.acmicpc.net/problem/3040 3040번: 백설 공주와 일곱 난쟁이 매일 매일 일곱 난쟁이는 광산으로 일을 하러 간다. 난쟁이가 일을 하는 동안 백설공주는 그들을 위해 저녁 식사를 준비한다. 백설공주는 의자 일곱개, 접시 일곱개, 나이프 일곱개를 준비한다. www.acmicpc.net 중복을 허용하지 않는 조합으로 합이 100인 7명을 구함. import java.io.FileInputStream; import java.io.FileNotFoundException; import java.util.Arrays; import java.util.Scanner; public class 백설공주와일곱난쟁이 { /* * 구할것: 합이 100이되는 7개의 수 * 9개중 7개를뽑아 합이 100이되.. 2021. 2. 16.
SWEA- 6808 규영이와 인영이의 카드게임 swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AWgv9va6HnkDFAW0 SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com 인영이의 카드내는 순서를 중복을 허용하지 않는 순열로 구하였다. 주석에서의 인영=>규영 규영=>인영 으로 바꾸어 읽어야 한다. (문제를 잘못읽었다) import java.io.FileInputStream; import java.io.FileNotFoundException; import java.util.Arrays; import java.util.Iterator; import java.util.Scanner; /.. 2021. 2. 15.