Dev Hyeri

◖코딩 테스트◗▬▬▬▬▬▬▬▬▬/백준 40

[백준](2024) 줄세우기 (설명/코드/정답)

문제 링크 : https://www.acmicpc.net/problem/10431 난이도 알고리즘 실버5 구현, 시뮬레이션 1. 요구 사항 이해 시간, 메모리 제한 : 1초 / 256MB 주어진 방법대로 줄 서기를 시뮬레이션하면서 몇 번 뒤로 물러서는지를 계산. * P: 테스트 케이스의 수 (1 ≤ P ≤ 1000) * T : 각 테스트 케이스 번호 * 테스트 케이스는 20개의 양의 정수가 공백으로 구분되어 주어짐. 2. 설계/검증 입력 - 테스트 케이스의 수 - 테스트 케이스의 번호 - 테스트 케이스 번호에 해당하는 원소 시간 복잡도 최악의 경우 공간 복잡도 O(1) -- O(1) 3. 정상 코드 import java.util.Scanner; public class Main{ public static ..

[백준](2024) 성 지키기 (설명/코드/정답)

문제 링크 : https://www.acmicpc.net/problem/1236 난이도 알고리즘 브론즈1 구현 1. 요구 사항 이해 시간, 메모리 제한 : 2초 / 128MB 각 행과 각 열을 순회하면서 해당 행과 열에 경비원이 하나도 없으면 카운팅 2. 설계/검증 입력 각 행과 열에 X가 존재하는지 여부를 저장하는 배열 시간 복잡도 최악의 경우 공간 복잡도 O(N * M) 2,500 O(N * M) 함수화 import java.util.*; public class Main { public static void main(String[] args) { // N,M,성의 상태를 입력받는다 // Scanner 객체 생성 Scanner scan = new Scanner(System.in); int N = sca..

[백준](2024) ✔️개미 (설명/코드/정답)

문제 링크 : https://www.acmicpc.net/problem/10158 난이도 알고리즘 실버3 수학, 애드 혹, 사칙연산 1. 요구 사항 이해 시간, 메모리 제한 : 0.15초 / 256MB x가 w, y가 h인 이차원 격자에서 x, y +1씩 이동. x가 0또는 w, y가 0또는 h일때 증감을 바꿔서 입력 횟수만큼의 이동 후 있는 위치를 계산 w와 h는 자연수이며 범위는 2 ≤ w,h ≤ 40,000 초기 위치 p와 q도 자연수이며 범위는 각각 0 < p < w과 0 < q < h 이동 횟수 t의 범위는 1 ≤ t ≤ 200,000,000 2. 설계/검증 입력 - 격자 설정 - 초기 위치 좌표 - 이동 횟수 이동 실행 반복문 - 증감 변환 시간 복잡도 최악의 경우 공간 복잡도 O(1) 3. ..

[백준](2024) 소금 폭탄 (설명/코드/정답)

문제 링크 : https://www.acmicpc.net/problem/13223 난이도 알고리즘 브론즈3 수학, 구현, 사칙연산 1. 요구 사항 이해 시간, 메모리 제한 : 2초 / 512MB 현재 시각으로부터 동작 시각까지의 인터벌을 구하시오 현재 시각 hh:mm:ss 포맷 (0 ≤ h ≤ 23), (0 ≤ m ≤ 59) , (0 ≤ s ≤ 59) 소금 투하 시각 hh:mm:ss 두 시각의 차이 (1초 ≤ interval ≤ 24시간) 2. 설계/검증 입력 입력받은 시각을 파싱 - split() 사용 입력받은 시간 차이 계산 음수 보정 시, 분, 초 변수를 출력 hh:mm:ss 포맷 형태로 출력 - System.out.printf("%02d:%02d:%02d", hh, mm, ss) 시간 복잡도 최악..

[백준](2024) 문서 검색 (설명/코드/정답)

문제 링크 : https://www.acmicpc.net/problem/1543 난이도 알고리즘 실버5 문자열, 완전탐색 1. 요구 사항 이해 시간, 메모리 제한 : 2초 / 128MB 영어로만 이루어진 문서에 입력한 단어가 몇 번 등장하는지 식별 문서 최대 2,500자 단어의 최대 길이 50 문서와 단어의 입력은 소문자 또는 공백 중복X 2. 설계/검증 문서와 단어의 입력 - nextLine() 문서를 순회하며 단어의 순서와 일치하면 리턴 단어의 철자 인덱스가 중복 X - 조회 성공 후 word의 길이만큼 이동한 후 다음 조회 시작 시간 복잡도 최악의 경우 공간 복잡도 O(N * M) 125,000 O(N + M) 3. 정상 코드 이중 for문 import java.util.Scanner; public..

[백준](2024) 단어 공부 (설명/코드/정답)

문제 링크 : https://www.acmicpc.net/problem/1157 난이도 알고리즘 브론즈1 구현, 문자열 1. 요구 사항 이해 시간, 메모리 제한 : 2초 / 128MB 대소문자가 섞인 단어에서 가장 많이 사용된 알파벳 식별 후 대문자로 출력 단어의 길이는 1,000,000 넘지 않음 빈도수가 가장 높은 알파벳이 여러개인 경우 '?' 출력 2. 설계/검증 소문자와 대문자는 같은 알파벳인 경우 하나로 처리 - toUpperCase() 로 전부 대문자 처리 가장 빈도 높은 알파벳과 그 빈도 수를 저장할 변수 시간 복잡도 최악의 경우 공간 복잡도 O(N) 1,000,000 O(1) 함수화 String word; private static void findMostFrequentAlphabet(w)..

[백준](2024)대소문자 바꾸기(설명/코드/정답)

문제 링크 : https://www.acmicpc.net/problem/2744 난이도 알고리즘 브론즈5 구현, 문자열 대소문자 바꾸기 1. 요구 사항 이해 시간, 메모리 제한 : 1초 / 128MB 입력받은 최대 100자 문자열을 대문자는 소문자로 소문자는 대문자로 변환 2. 설계/검증 대소문자 구분 대소문자 변환 - 아스키코드의 숫자 차이를 이용 System.out.println((char)('A' + 32)); // a System.out.println((char)('a' - 32)); // A 시간 복잡도 최악의 경우 공간 복잡도 O(N) -- O(N) 함수화 static void changeCase(String word){ if ("대문자인 경우"){ // 소문자로 변경 }else("소문자인 경..

[백준] 깃허브 자동 커밋 연동(2024)

[ 목차 ] 1. 확장자 설치 2. 깃허브 확장자 연동 3. 자동 커밋 확인 * 프로그래머스 programmers 깃허브 자동 연동 방법 * 리트코드 leetcode 깃허브 자동 연동 방법 * 프로그래머스에서 이미 깃허브를 연동하여 사용하고 있었다면, 바로 3. 자동 커밋 확인으로 넘어가자 1. 확장자 설치 우측 상단 계정 옆의 ⁝ 클릭 - 확장 프로그램 - Chrome웹 스토어 방문하기 우측 상단 [🔍 확장 프로그램 및 테마 검색] 에서 "백준허브" or "BaekjoonHub" 검색 빨간색 박스로 강조한 백준 허브(BeakjoonHub) 클릭 우측 상단 Chrome에 추가 버튼 클릭 팝업창 확장 프로그램 추가 버튼 클릭 팝업창으로 확장 프로그램 설치 완료 확인 2. 깃허브 확장자 연동 우측 상단 퍼즐..