[백준] 2018: 수들의 합 5 - JAVA(자바)
·
CS/Do it 알고리즘 코딩테스트 (자바편)
TMI: 며칠 전 실버 5로 승급했다🎉🎉 원래 책에 있는 모든 문제를 포스팅 하려 했지만... 생각보다 블로그 포스팅 시간이 꽤 걸려서(한시간 반 이상..ㅠ) 중요한 몇몇 문제들만 선별해서 포스팅하기로 했다. 이번 문제는 투 포인터를 이용한 문제라 정리하면 좋을 것 같아서 글을 올린다.🧩 문제Do it 알고리즘 코딩 테스트 자바편(구판) 006https://www.acmicpc.net/problem/2018"> 🧠 접근 방법 입력값 N의 최댓값이 10,000,000(천만)이므로 제한 시간 2초 안에 풀기 위해서는 O(n)의 시간 복잡도 알고리즘을 사용해야 한다.따라서 O(n)의 시간 복잡도를 가진 투 포인터(슬라이딩 윈도우) 방식으로 접근했다. 그럼 투 포인터란 무엇일까? 투 포인터1차원 배열..
[TIL-260223] 알고리즘: 2차원 배열의 순회, 델타 탐색
·
CS/Algorithm
배열 순회행 우선 순회 int i; // 행의 좌표 int j; // 열의 좌표 int[][] arr= {{1,2,3},{4,5,6},{7,8,10}}; int N = arr.length; // 행의 길이 int M = arr[0].length; // 열의 길이 for (int i = 0; i 행 역 우선 순회 int i; // 행의 좌표 int j; // 열의 좌표 int[][] arr= {{1,2,3},{4,5,6},{7,8,10}}; int N = arr.length; // 행의 길이 int M = arr[0].length; // 열의 길이 for (int i = 0; i = 0; j--) { // 마지막 인덱스 열부터 0까지 System.out.prin..
[백준] 1546: 평균 - JAVA(자바)
·
CS/Do it 알고리즘 코딩테스트 (자바편)
🧩 문제Do it 알고리즘 코딩 테스트 자바편(구판) 002https://www.acmicpc.net/problem/1546"> 💻 풀이이 문제도 우선 책 참고 안하고 스스로 풀어보았다.import java.util.Scanner;public class P1546_평균 { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int n = sc.nextInt(); int[] scores = new int[n]; int max = 0; for (int i = 0; i 점수를 입력받고 최대값을 기준으로 점수를 각각 변환하여 새 점수 배열에 넣어주고 평..
[백준] 11720: 숫자의 합 - JAVA(자바)
·
CS/Do it 알고리즘 코딩테스트 (자바편)
🧩 문제Do it 알고리즘 코딩 테스트 자바편(구판) 001번https://www.acmicpc.net/problem/11720"> 첫 문제는 숫자의 합을 구하는 간단한 문제이다.우선 책에 있는 해석을 보기 전 먼저 스스로 풀어보았다. 💻 풀이import java.util.Scanner;import java.lang.String;public class P11720_숫자의합 { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int n = sc.nextInt(); String numbers = sc.next(); int sum = 0; for..
Do it 알고리즘 코딩 테스트 자바편(2022년 구판) 시작!
·
CS/Do it 알고리즘 코딩테스트 (자바편)
아마 대학교 3학년 때인 것 같다. 알고리즘을 제대로 공부해서 코딩 테스트를 준비하겠다고 이 책을 샀었다. 그러나 챕터 3을 하다가 중간에 의지 부족과 시간 부족, 나태함으로 그만두게 되었다.2년이 지난 지금, 다시 알고리즘 공부를 시작해보기로 했다. 이 책은 2025년에 새로 개정판이 출시되었지만, 굳이 새 책을 구매할 필요없이 그냥 있던 책으로 공부하기로 했다. 뭐 문제 풀이가 달라지는 것도 아니고, 개정판에는 최신 출제 경향을 분석한 문제들이 추가됐을 뿐이니 그건 따로 공부하면 될 것 같아서 그냥 원래 있던 책을 사용하기로 했다. 이 책은 30일 코스로 100개의 문제를 풀고 있다.나는 현재 부트캠프로 시간을 많이 쓰고 있기 때문에, 알고리즘 공부에 많은 시간을 할애하기는 어려울 것 같다.그래서 6..
[TIL-260213] 알고리즘: 정렬, 검색(탐색)
·
CS/Algorithm
이 글은 2026년 2월 13일에 작성된 글입니다.알고리즘이란?주어진 문제를 해결하기 위한 단계적인 절차.알고리즘의 조건입력: 모호하지 않고 잘 정의된 입력 값출력: 명확히 정의된 1개 이상의 출력 값명확성: 각 명령어의 의미가 모호하지 않고 정확유한성: 한정된 수의 단계 후에는 반드시 종료되어야 한다언어 독립성: 프로그래밍 언어와 상관없이 독립적유효성: 명령어들은 현재 실행 가능한 연산이어야 한다 알고리즘의 성능여러 개의 알고리즘이 있을 때, 성능을 비교하기 위해 연산량(시간 효율성), 메모리 사용량(공간 효율성)을 고려할 수 있는데둘 중 하나를 골라야 한다면 보통 연산량 즉 🕐알고리즘의 시간 효율성🕐을 선택한다. 알고리즘의 작업량을 표현할 때 시간 복잡도(Time Complexity)로 표현한다...