본문 바로가기

전체 글44

[백준] -3190번 뱀 www.acmicpc.net/problem/3190 3190번: 뱀 'Dummy' 라는 도스게임이 있다. 이 게임에는 뱀이 나와서 기어다니는데, 사과를 먹으면 뱀 길이가 늘어난다. 뱀이 이리저리 기어다니다가 벽 또는 자기자신의 몸과 부딪히면 게임이 끝난다. 게임 www.acmicpc.net 문제 문제에서 요구하는걸 그대로 구현하는 문제 조건 벽 또는 자기자신 몸과 부딪히면 게임이 끝난다 -> hit(현재row좌표,col좌표, 뱀의좌표 리스트 ) 메소드 뱀의 이동 몸길이를 늘려 머리를 다음칸에 위치한다 이동한 칸에 사과가 있다면 사과가 없어지고 꼬리는 움직이지않는다. -> boolean isapple 로 사과인경우, 아닌경우 체크 이동한칸에 사과가 없다면 몸길이를 줄여 꼬리가 위치한 칸을 비운다. pack.. 2021. 3. 16.
[백준]- 1759 암호 만들기 www.acmicpc.net/problem/1759 1759번: 암호 만들기 첫째 줄에 두 정수 L, C가 주어진다. (3 ≤ L ≤ C ≤ 15) 다음 줄에는 C개의 문자들이 공백으로 구분되어 주어진다. 주어지는 문자들은 알파벳 소문자이며, 중복되는 것은 없다. www.acmicpc.net 문제 C 개의 문자들갯수가 주어질 때 주어진 조건에 맞춰서 가능한 L개의 암호를 뽑기 -> 조합 조합의 기본 구조 combination( 어디부터 뽑을지 idx, 몇개 뽑았는지 k, 뽑아서 어디에 저장할건지 sel [ ] ) package algo_prepare_Atest; import java.io.FileInputStream; import java.io.FileNotFoundException; import jav.. 2021. 3. 16.
[SWEA]- 8382 방향 전환 swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AWyNQrCahHcDFAVP& SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com 문제 BFS사용하여 최단거리 탐색 주의 상,하 & 좌,우 한 묶음으로 보고 방향이 다른 경우에만 Queue에 Add 해줌. 방문체크 잊지말기 구현 Queue의 size만큼 묶어서 실행 -> 진행된 count를 구할수있다 참고 BFS에서 진행 거리 구하는 방법 1. 객체배열에 cnt값을 저장 -> Add할때 하나씩 늘려줌 2. Queue size별로 끊어서 거리 체크 -> 나중에 일정거리만큼 되는 좌표값들에대한 .. 2021. 3. 15.
[백준] 14888번 연산자 끼워넣기 www.acmicpc.net/problem/14888 14888번: 연산자 끼워넣기 첫째 줄에 수의 개수 N(2 ≤ N ≤ 11)가 주어진다. 둘째 줄에는 A1, A2, ..., AN이 주어진다. (1 ≤ Ai ≤ 100) 셋째 줄에는 합이 N-1인 4개의 정수가 주어지는데, 차례대로 덧셈(+)의 개수, 뺄셈(-)의 개수, www.acmicpc.net 연산자로 가능한 모든 조합을 생각해봐야 하는 문제 백트래킹: 연산자 배열의 값이 0이라면 계산을 진행하지 않음 package study.week8; import java.util.Scanner; public class BJ연산자끼워넣기 { /* * 다해보기, 순열 */ static int [] nums ;//숫자배열 static int []ops ;//+ .. 2021. 3. 14.
백준- 16506 CPU www.acmicpc.net/problem/16506 16506번: CPU 디지털하드웨어설계 과목의 최종 프로젝트는 16-bit CPU를 설계하고 Verilog 언어로 구현하는 것이다. 본인이 구현한 CPU가 제대로 동작하는지 테스트하기 위해서는 기계어 코드를 입력으로 주어야 www.acmicpc.net 문제 문제에서 주어진 조건을 그대로 구현하기만 하면 되는 문제 machine[] 이라는 길이 16짜리 배열에 1. rD 삽입 ( 6~8 index ) 2. rA 삽입 ( 9~11 index ) 3. rB 혹은 #C 삽입 ( 12~15 index ) 4. opcode 삽입 ( 0~3 index ) Operation 에 맞는 값을 가져오기 위해 Hashmap을 사용하였다. (value, key) packag.. 2021. 3. 7.
백준- 8911 거북이 www.acmicpc.net/problem/8911 8911번: 거북이 첫째 줄에 테스트 케이스의 개수 T가 주어진다. 각 테스트 케이스는 한 줄로 이루어져 있고, 컨트롤 프로그램이 주어진다. 프로그램은 항상 문제의 설명에 나와있는 네가지 명령으로만 이루어져 www.acmicpc.net 문제 거북이가 이동한 영역을 포함하는 가장 작은 직사각형의 넓이를 구해라 풀이 거북이의 행 좌표값의 최대,최솟값. 열 좌표값의 최대,최솟값을 커맨드 실행 시마다 업데이트 후 결과값 = 최대행값-최소행값 * 최대열값-최소열값 으로 넓이를 구하였다. 주의 거북이의 시작 좌표가0,0이기 때문에 최대,최소값을 Integer.MAXVALUE, Integer.MINVALUE로 잡을 시 -1이 최대 열값이 나올수 있다. 따라서 평소와.. 2021. 3. 7.