분류 전체보기 42

[취준 일기] SK C&C 수시 채용 신입 서류합격

사실 지난 하반기 인턴에서 면접 탈이였어서, 다시 쓸까 말까 고민을 많이했다. 혹시 썼는데 떨어지면 어떡하지,, 시간 낭비하는거 아닌가? 그러나 sk는 지난 전형에서 떨어졌다고 떨어뜨리지는 않은가보다... 다행이 서류는 붙었는데 다음에 있을 장장 약 4시간 가량의 코테+심층역량 테스트를 볼 생각하니까 벌써부터 체력이 떨어지는 것 같다... 항상 자소서 떨어지는데 sk에서는 두번이나 붙혀준걸 보면 sk인사팀과 잘맞는거 아닐까,, ^^,,,, 살짝 기분이 좋다 sk는 자소서 항목이 바뀌지 않아서, 어떻게 써야할까 고민을 많이 했다. 같은 내용을 복붙하면 백퍼센트 떨어질것이기 때문에,,, 같은 내용의 주제라도 글에 변화를 줘야했다. 특히 관련경험 3개 쓰는게 너무 힘들었다. 지난 인턴서류때는 하루 특강 들었던..

My record 2021.08.03

Trie 자료 구조 알고리즘 만들기

알고리즘 문제를 풀다보면 문자열을 다루고 원하는 문자열을 검색하는 문제를 만날때가 종종 있다. 그때마다 Trie 자료 구조에 대해 찾아보곤 하는데 매번 까먹어서 잊지 않을려고 직접 기록해본다. 우선 Trie의 개념에 대해 이야기 해보겠다. Trie 자료 구조의 개념 Trie는 트리 형태의 자료 구조로 문자열을 빠르게 저장하고 검색하기 위해 사용되는데 사용한다. 개념을 이해하는 것은 어렵지 않았지만 막상 코드를 작성하면서 내가 대충 이해하고 넘어갔구나 생각하게 됬다. static class Trie{ boolean isLast = false; //현재 노드의 자식 노드 배열을 만든다. //배열의 크기는 영어 소문자를 기준으로 26개. Trie[] childNodes = new Trie[26] } 기본적으로..

STUDY/Algorithm 2021.07.01

[BOJ] 4375번 1 - JAVA

https://www.acmicpc.net/problem/4375 4375번: 1 2와 5로 나누어 떨어지지 않는 정수 n(1 ≤ n ≤ 10000)가 주어졌을 때, 1로만 이루어진 n의 배수를 찾는 프로그램을 작성하시오. www.acmicpc.net 오늘 풀어본 문제는 한달전 풀었다가 실패했던 문제다. 참 다양하게 틀렸는데 시간초과, 런타임 에러(ArrayIndexOutOfBounds, NumberFormat) 등등 오늘도 다시 풀었을때 네번에 실패를 맛봤다.. 이번엔 메모리 초과,, 우선 런타임 에러 NumberFormat같은 경우 숫자 범위를 long타입으로 잡았더니 범위가 초과되서 발생한 에러였다. 이를 해결하기 위해 BigInteger 객체를 사용했다. 그러나 문제는 아래의 코드를 작성했을 때는..

today's alogrithm 2021.06.25

[BOJ] 2470번 두 용액 - JAVA

https://www.acmicpc.net/problem/2470 2470번: 두 용액 첫째 줄에는 전체 용액의 수 N이 입력된다. N은 2 이상 100,000 이하이다. 둘째 줄에는 용액의 특성값을 나타내는 N개의 정수가 빈칸을 사이에 두고 주어진다. 이 수들은 모두 -1,000,000,000 이상 1,000,00 www.acmicpc.net 오늘 두번째로 풀어본 문제는 약 한달전 풀었다가 실패했던 두 용액이라는 문제이다. 규칙은 간단하다. 두 용액 값을 더하여 0에 가장 가까운 두 용액을 찾는 문제다. 호기롭게 도전했던 지난달, 시간초과라는 쓴맛을 맛봤다.. 기본적으로 이분 탐색 방법을 사용하여 문제를 풀었다. 첫 도전때 실패 원인은 쓸데없이 많이 발생하는 연산 문제이다. 그래서 이분탐색 부분을 다시..

today's alogrithm 2021.06.22

[BOJ] 1212번 8진수 2진수 - JAVA

https://www.acmicpc.net/problem/1212 1212번: 8진수 2진수 첫째 줄에 8진수가 주어진다. 주어지는 수의 길이는 333,334을 넘지 않는다. www.acmicpc.net 약 한달 전 런타임에러나서 포기하고 다른문제 풀다가 오늘 해결했다. 처음 문제를 풀때 수의 범위를 생각하지 않고 자바에 있는 내장함수를 이용했는데, 8진수를 10진수로 바꾸는 과정에서 수가 너무 커져 런타임에러가 발생했다. 그래서 귀찮아서 안풀고 있었는데 오늘 풀었다. import java.util.*; class Main{ public static void main (String[] args){ Scanner sc = new Scanner(System.in); String n = sc.next(); /..

today's alogrithm 2021.06.22

[BOJ] 12852번 1로 만들기 2 - JAVA

https://www.acmicpc.net/problem/12852 12852번: 1로 만들기 2 첫째 줄에 1보다 크거나 같고, 106보다 작거나 같은 자연수 N이 주어진다. www.acmicpc.net 이번 문제는 https://www.acmicpc.net/problem/1463 1463번: 1로 만들기 첫째 줄에 1보다 크거나 같고, 106보다 작거나 같은 정수 N이 주어진다. www.acmicpc.net 이 문제의 진화된 버전이라고 생각한다. 1로 만들기의 경우 재귀와 dp를 같이 써서 풀었다. 최소 횟수만 나타나면 되는 문제라서 가능했는데 1로만들기 2 같은 경우 어떤 숫자들을 지나갔는지가 함께 출력이 되야해서 고민하는 시간을 가졌다. 처음에는 1로 만들기의 코드를 응용해서 문제를 풀려고 했다...

today's alogrithm 2021.06.21

[BOJ] 2502번 떡 먹는 호랑이 - JAVA

https://www.acmicpc.net/problem/2502 2502번: 떡 먹는 호랑이 첫줄에 첫 날에 준 떡의 개수 A를 출력하고 그 다음 둘째 줄에는 둘째 날에 준 떡의 개수 B를 출력한다. 이 문제에서 주어진 D, K에 대해서는 항상 정수 A, B (1≤A≤B)가 존재한다. www.acmicpc.net 오늘 풀어본 문제는 백준의 떡 먹는 호랑이 기본적으로 다이나믹 프로그래밍 방법으로 푸는데 초깃값을 설정하는 것이 문제다. 나는 while문으로 초깃값을 설정하도록 했다. 처음에는 이분법으로 middle값을 가지고 문제를 풀다가 안되서 그냥 하나씩 값을 줄여줬다. 입력 값의 범위가 크지 않아서 가능한 방법인데,, 만약 범위가 크다면,,, 다른 방법을 찾아봐야 할것 같다. import java.u..

today's alogrithm 2021.06.18

[BOJ] 1254번 팰린드롬 만들기 - JAVA

https://www.acmicpc.net/problem/1254 1254번: 팰린드롬 만들기 동호와 규완이는 212호에서 문자열에 대해 공부하고 있다. 규완이는 팰린드롬을 엄청나게 좋아한다. 팰린드롬이란 앞에서부터 읽으나 뒤에서부터 읽으나 같게 읽히는 문자열을 말한다. 동호는 www.acmicpc.net 오늘 풀어본 문제는 실버 티어 1,2 등급에 있는 문제인 팰린드롬 만들기~ 첫 시도에 실패를 맛보고 좀 더 고민한뒤 풀어서 맞췄다. 바보같이 StringBuffer에다가 append를 이상하게 하고있었다. import java.util.*; class Main{ public static void main (String[] args){ Scanner sc = new Scanner(System.in); S..

today's alogrithm 2021.06.17

백준 티어 GOLD 4 달성

최근 solved.ac라는 것을 통해 백준 사이트의 티어 확인이 가능해졌다. 내 티어는 골드 4 숫자가 작을수록 높은 건데 올해 열심히 해서 벌써 4까지 만들었다. 비록 블로그에는 올리지 않았지만 깃헙에 올려놓은 코드들이 많으니, 나중에 가져와서 포스팅 해야겠다. 벌써 2021년의 절반이 지나가고 있는데 더 열심히 해서 플래티넘으로 달아야겠다.. 영차,,차영,,차.. 이렇게 못 맞춘 문제도 다시 시도해봐야지..

My record 2021.06.17

[취준 일기] SK C&C 면접 후기

생에 처음으로 대기업 면접을 봤다. 주변에서 sk 면접본다니까 좋은 곳이니 열심히 하라고 응원해줬다. 다만 좋은 기업이 첫 면접이여서 망했을 뿐 ㅎㅎ 전체적으로 직무 이해도가 떨어져서 질문과 그에대한 대답을 준비하는것이 부족했던것 같다. 직무는 금융 소프트웨어 엔지니어로 관련된 정보도 없고 준비했던것도 없었기 때문에 어쩔수 없었다고 생각한다. 그리고 이번 경험을 계기로 금융권 회사가 원하는 인재? 사람에 대해서 느낄 수 있었던것 같다. 뭘 알고 어떤게 하고 싶고 등등 어떤 일을 할지도 알 수 있는 경험이었다. 면접은 비대면으로 이루워졌고 (나) : 다수 였다. 시간은 30분 주어지는데 20분 안되게 봤던 것같다. 질문도 일반 cs 질문이 아니라 프로젝트와 자소서 위주의 질문이 많았고 프로젝트 질문에서 꼬..

My record 2021.06.17