알고리즘&자료구조/ETC4 백준 - 15683 Javaimport java.util.*;public class Main { /* 1.어떤 방식으로 문제에 접근해야 되는가? 변수(cctv)들이 가질 수 있는 값이 여러개, 변수들이 가질 수 있는 모든 조합을 확인 1번 cctv의 방향 - 4 2번 cctv의 방향 - 2 3번 cctv의 방향 - 4 4번 cctv의 방향 - 4 5번 cctv의 방향 - 1 cctv가 볼 수 있는 방향이 최대 4이므로 4진법(0~3)을 사용해서 모든 방향의 조합을 확인 ex) 1번 cctv만 있는 경우 0(동), 1(북), 2(서), 3(남) -> 0~3까지 총 4개 방향 ex) 1번 cctv가 2대 있는 경우 00, 01, 02, 03, 10, 11, 12, 13, 20, 21, 22, 23.. 2024. 6. 7. 프로그래머스 - k진수에서 소수 개수 구하기 import java.util.*;public class Main { static public int solution(int n, int k) { ArrayList list = new ArrayList(); // 1.n을 k진수로 변환 int mok = n/k; list.add(n%k); while(mok != 0) { list.add(mok%k); mok = mok/k; } StringBuilder sb = new StringBuilder(); for(int i=list.size()-1;i>=0;i--) { sb.append(list.get(i)).. 2024. 6. 6. 프로그래머스 - 주차 요금 계산 문제 이해조건문제에서 주어진 조건을 잘못 이해하고 넘어가는 경우 코드를 다르게 작성할 수 있으니 초기에 조건을 정확하게 이해하자1. 차량은 In Out을 여러번 할 수 있음 00~23:59 동안의 해당 차량번호가 얼마나 주차장에 머물렀는지 체크 들어갈때마다 기본 주차요금이 계속 더해지는게 아니라 하루동안에 머물렀던 총 시간을 기준으로 계산 로직전체 로직을 세분화시키고 세분화된 로직별로 처리하면서 진행하자0.초기값 세팅Map in Map out List record(차량별 요금 기록) 1.IN 차량이 있으면 시간체크 시작 (O) -> 입차시간 저장, 처음 In인 경우 경과시간 0으로 초기화 2.OUT 차량이 있으면 경과시간 계산 (O) -> in에 해당 차량의 입차시간을 -1 처리(in~out이 한세트로 .. 2024. 6. 5. 프로그래머스 - 바탕화면 정리 문제 분석 바탕화면의 칸은 (1,1) ~ (5,4) 구분되며, 드래그 할 격자점은 (0,0) ~ (6,5)로 구분된다."칸"을 기준으로 이중 for문을 돌다가 #(파일)이 나올때 마다 드래그 최소 시작 지점과 드래그가 끝나는 최소 지점을 계산 드래그를 시작하는 최소 시작 지점의 행과 열 : startDragRow, startDragCol드래그가 끝나는 최소 지점의 행과 열 : endDragRow, endDragCol파일이 나올때 마다 4가지 변수와 비교해서 최소 지점을 갱신한다. Java 코드static public int[] solution(String[] wallpaper) { int[] answer = {}; // 드래그 최소 시작 지점 int startDragRow = Intege.. 2024. 6. 3. 이전 1 다음