본문 바로가기

공부40

2018 KAKAO BLIND RECRUITMENT > [1차] 프렌즈4블록 https://school.programmers.co.kr/learn/courses/30/lessons/17679 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr  - 나의 풀이✅ 이차원 배열 ➡︎ gameBoard ✅ 지워질 블록에 true 표시할 이차원 배열 ➡︎ checkBoard ✅ 지워질 2*2 블록 위치 확인 ➡︎ 아래 4개의 블록 캐릭터가 같으면 지워야 함[i][j] [i][j+1] [i+1][j] [i+1][j+1]✅ 블록 지우기 ➡︎ *표시 ✅ 블록 내리기  - 나의 코드class Solution { public int solution(int m, int n, String[] boa.. 2024. 11. 7.
2019 KAKAO BLIND RECRUITMENT > 오픈채팅방 https://school.programmers.co.kr/learn/courses/30/lessons/42888 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr  - 나의 풀이✅ key : value 해시맵 ➡︎ nickNameMapHashMapString> nickNameMap = new HashMap(); ✅ 문자열 리스트 → 배열 변환 방법 ( ArrayList → String[] )알아두면 String[] answer 생성 및 데이터 추가하지 않고, 아래와 같이 바로 answerList 이용하여 리턴할 수 있음.return answerList.toArray(new String[answerLis.. 2024. 11. 6.
구명보트 https://school.programmers.co.kr/learn/courses/30/lessons/42885 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr - 나의 풀이✅ 구명보트는 한번에 최대 2명씩 탈 수 있음 ➡︎ 한번에 사람 2명 또는 사람 1명을 태울 수 있음 ✅ 구명보트에 태운 사람 무게 ➡︎  weight가장 가벼운 사람 + 가장 무거운 사람 > limit ➡︎ 가장 무거운 사람은 혼자 타야함가장 가벼운 사람 + 가장 무거운 사람 ➡︎ 두 사람이 같이 탈 수 있음그 다음 가벼운 사람 ...그 다음 무거운 사람 ...사람들의 몸무게을 담은 배열 people 의 반절을 넘어 비교하게 되면.. 2024. 11. 5.
기능개발 https://school.programmers.co.kr/learn/courses/30/lessons/42586 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr - 나의 풀이✅ 작업완료까지 필요한 날짜 Queue ➡︎ queue남은 진도 = 100 - progresses[i]남은 진도 / 작업 속도 ➡︎ ex) 3.5 , 3.333 등의 경우, 4일이 필요 ➡︎ 오름 Math.ceil남은 날 = (int) Math.ceil((100.0 - progresses[i]) / speeds[i]);Math 클래스의 메소드 아래 표 참고메소드설명ceil(double a)올림floor(double a)내림round.. 2024. 11. 4.
숫자 짝꿍 https://school.programmers.co.kr/learn/courses/30/lessons/131128 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr - 나의 풀이✅ X, Y 문자열 ➡︎ 로 이루어진 해시맵 xArr, yArrHashMap ➡︎ 문자열로 이루어져 있기 때문에 형변환 없이 정수 사용하기 위함xArr.put(key, xArr.getOrDefault(key, 0)+1); ➡︎ 해당 key 의 값이 이미 있다면 +1, 없다면 초기값 0 ✅ xArr, yArr 에 공통으로 들어있는 숫자 리스트 commonList ➡︎ 이후에 내림차순 정렬하기 위해 리스트 사용ArrayList ➡.. 2024. 11. 3.
2019 카카오 개발자 겨울 인턴십 > 크레인 인형뽑기 게임 https://school.programmers.co.kr/learn/courses/30/lessons/64061 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr - 나의 풀이✅ Stack 스택 ➡︎ 인형뽑기 등과 같이 맨 위의 데이터를 뽑거나, 최근에 삽입한 데이터를 대상으로 뭔가 비교/연산할 때 사용바구니 스택 : bucketSt인형이 들어있는 2차원 배열의 board 각 한줄에 대한 스택 : lineSt ➡︎ 배열 스택 ✅ lineSt에 인형 채우기 순서  - 나의 코드import java.util.Stack;class Solution { public int solution(int[][] b.. 2024. 11. 2.
N-Queen https://school.programmers.co.kr/learn/courses/30/lessons/12952 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr - 나의 풀이 ✅ 길이 n 인 정사각형에서 n개의 퀸 ➡︎ 한 줄에 하나의 퀸만 들어갈 수 있음일차원 배열로 압축 가능 ➡︎ chessBoard = new int[n];    ✅ 공격범위가로, 세로1차원 배열로 chessBorad를 생각했기 때문에 가로는 생각XchessBoard 가 [1, 3, 0, 1] 이라면, 아래 그림과 같이 세로로 공격당하게 됨대각선대각선은 기울기가 1y증가량 / x증가량 = 1 따라서,  x증가량 = y증가량절댓값 사.. 2024. 11. 1.
2019 KAKAO BLIND RECRUITMENT > 실패율 https://school.programmers.co.kr/learn/courses/30/lessons/42889 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr  - 나의 풀이✅ key : value 해시맵 ➡︎ failMapHashMap failMap = new HashMap(); ✅ 스테이지별 실패율 = 해당 스테이지에 도달한 플레이어 수 / 해당 스테이지를 클리어하지 못한 플레이어 수해당 스테이지에 도달한 플레이어 수 ➡︎ players해당 스테이지를 클리어하지 못한 플레이어 수 ➡︎ failPlayers🚨 double 을 사용해야 실패율 계산 가능 ✅ 스테이지에 도달한 플레이어가 없으면 .. 2024. 11. 1.
공원 산책 https://school.programmers.co.kr/learn/courses/30/lessons/172928 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr - 나의 풀이✅ 공원 가로길이 w, 세로길이 hint w = park[0].length();int h = park.length; ✅ 공원 char 이차원배열 ➡︎ 배열 크기 할당 시에, 세로*가로 (🚨[h][w]) 주의char[][] parkArray = new char[h][w];좌표처럼 가로가 x, 세로가 y 라고 생각하면 안됨. 아래 그림 내용 참고 ✅ 시작점 S 위치 먼저 찾고, 공원 산책 시작이동중 현재 위치  ➡︎ parkArr.. 2024. 10. 30.