코테를 위한 Java 문법 정리
·
Coding Test
평소 C++을 코테 주 언어로 사용하는데, 백엔드 직무의 경우 Java로 코테를 응시해야 하는 경우가 있어 벼락치기용으로 Java 문법을 정리하고자 한다. (틈틈이 업데이트 중) 입출력import java.io.*;import java.util.*;public class Main { public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); StringTokenizer st = new StringTokenizer(br.readLine()); int n = Integer.parseInt..
[C++] 트라이(Trie)
·
Coding Test/Algorithm & Data Structure
1. 트라이(Trie)트라이(Trie)는 어떤 문자열이 특정 문자열에 해당되는지 알아낼 때 효율적으로 사용할 수 있는 자료구조이다.트라이는 문자열 집합 내에서 중복되는 접두사들에 대응되는 노드들이 서로 연결된 트리이다.  루트는 빈 문자열로 시작하여, 리프 노드는 문자열이 된다. 만약 위와 같은 트라이에서 'ten'이라는 단어를 찾을 때, 루트 노드에서 시작하여 t를 찾는다. 그 후 자식 노드들 중 e를 찾고, 또 n을 찾는다.리프 노드까지 도달했다면, 해당 문자열이 우리가 찾던 문자열이 되고 탐색이 완료된다. 트라이는 모든 문자열을 O(log n)으로 탐색이 가능하여 문자열 탐색이 굉장히 빠르다는 장점이 있다.하지만, 알파벳은 총 26개이므로 문자열을 포함하는 각 노드는 26개의 자식 노드 포인터를 가..
[Programmers] 광물 캐기
·
Coding Test/Problem Solving
https://school.programmers.co.kr/learn/courses/30/lessons/172927 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr 1. 문제 설명 작업을 끝내기까지 필요한 최소한의 피로도를 구해야 한다.작업을 끝내는 것은 1) 모든 광물을 캐거나, 2) 더 사용할 곡괭이가 없을 때까지이다.곡괭이 하나를 선택하면 광물 5개를 연속으로 캘 수 있다.2. 구현 아이디어 1 - 틀렸습니다곡괭이 하나를 선택하면 광물 5개를 연속을 캘 수 있다고 했으니, 주어진 minerals 배열을 5개씩 나누어 생각해보았다.글자색을 다르게 하여 각 ..
[Programmers] 호텔 대실
·
Coding Test/Problem Solving
프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr   1. 구현 아이디어 1 - 틀렸습니다백준 1931번 회의실 배정 문제나 저번에 포스팅한 과제 진행하기 문제와 비슷한 그리디 알고리즘 유형이다. 이전에 풀었던 기억을 되살려 아래에 적은 순서대로 풀었다.1. 끝나는 시간을 기준으로 book_time을 정렬한다2. 필요한 객실의 수를 관리하는 벡터 rooms를 만든다3. book_time에 있는 원소(elem)들을 순회하며 rooms에 있는 원소(room=rooms[i])와 비교한다 (2중 반복문)   3-1. 만약 elem의 시작하는 시간 >= room의 끝나는..
[Programmers] 유사 칸토어 비트열
·
Coding Test/Problem Solving
프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr1. 문제 설명0번째 유사 칸토어 비트열은 "1"n번째 유사 칸토어 비트열은 n-1번째 유사 칸토어 비트열에서1을 11011로 치환0을 00000로 치환n, l, r이 주어졌을 때 n번째 유사 칸토열에서 [l, r] 구간에서의 1의 개수를 반환해야 한다.  더 자세한 문제 설명이 필요하다면 위 링크 참고 ... 2. 구현 아이디어1 - 틀렸습니다처음에 백준 4779번 칸토어 집합 문제가 떠올라서 재귀를 사용해서 문제에 주어진 내용을 그대로 구현하였다.#include using namespace std;typedef..
코딩테스트 전에 빠르게 볼 내용 정리
·
Coding Test
0. 같이 읽으면 좋은 글 [C++] 삼성 SW 역량 테스트 보기 전 알고리즘 정리1. 입출력 시간 단축ios::sync_with_stdio(false);cin.tie(NULL);cout.tie(NULL);C++ 표준 스트림과 C 표준 스트림의 동기화를 끈다endl 대신 "\n"을 사용하기 2. 순열 (next_permutation)서로 다른 n개의 원소에서 r개를 뽑leeeeeyeon-dev.tistory.com 1. 문제 접근 순서기본적인 문제 접근 순서: 완전 탐색 → DP → 그리디1초에 약 2000만번 연산 → 제한시간 내에 연산 몇 번 수행될지 확인하자그리디는 거의 정렬 + 우선순위 큐로 풀이특정 기준에 따라 sort → 우선순위 큐에 넣기입력값이 매우 크다? → 이분탐색 고려하기0또는 1로 ..
짱정연
'Coding Test' 카테고리의 글 목록