본문 바로가기

전체 글

(27)
카카오 커머스 백엔드 코딩테스트 탈탈털린 후 복기 요즘 이런저런과제와, 면접 등.. 때문에 알고리즘을 예전보다 소홀히 했더니 머리가 굳은것같다 기대도 안했는데 탈탈 털림ㅋ 그런데 대부분의 사람들은 무지 쉽다는 반응.....ㅋ 사실 1번문제는 며칠전에본 다른 회사 코테에서 숫자 하나 안바뀌고 그대로나왔다 근데 그 때 풀이를 바꾸지도 않고 고대로적용시켰고 그게 시초가 난다는걸 알게됨 ㅋ 어쩐지 올솔인데 떨어졌던 이유가 있엇어 ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ 재귀로 뽕맞으면 얼마나 위험한지 알게됨.... 어쩐지 입력이 10만이라 불안불안했는데 혼자 너무 어렵게 생각했던 듯... 1번문제는 최소로 상품을 교환하는건데, 여기에서 최소에 꽂혀서 이리 저리 다교환해보는 dfs를 썼다 ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ..
[백준] 2493 - 탑 교수님이 어렵다고 하셔서 쫄아있었는데 정말 어렵다 ,, ^^!; 야구 문제가 여러 알고리즘들이 섞이고, 야구의 룰에 따라 값들을 관리해줘서 어렵다면 이 문제는 나오는 자료구조는 스택 하나 뿐인데 그 스택을 단순한 LIFO + 다른 기능을 추가적으로 생각해봐야한다. 사실 스택문제라는 걸 알기 전까진 이 문제가 스택으로 풀릴 수 있을 거란 생각조차 못했고, 브루트포스인가 하고 생각했었다. 하지만 완전탐색이라고 하기엔 입력 범위가 너무 컸으며, 완전탐색으로 코드를 짰더니 백준에선 틀렸다고 하고, 정올에선 시간초과 에러가 났다.. 이때부터 ㄹㅇ 멘붕 시작ㅋㅋㅋㅋㅋㅋㅋㅋㅋ 한시간 가량 짠 코드가 아까웠지만... 이럴 땐 과감히 버려야 한다는 교수님의 말씀이 기억나서 과감히 버리고 스택으로 접근을 시도해보았다. 각..
[백준] 17282 - 야구 순열의 경우의 수(타자 순서)에 따른 결과값(야구 점수)를 일일히 대조해서 각각의 순열 중 최고점을 찾는 문제. 순열을 구하면서 재귀가 사용되었고, 순열에 따른 결과값을 모두 다 살펴본다는 면에서 완전탐색 문제이다. 문제 자체는 어렵지 않은데 (특히 야구를 자주 봤다면,,,,ㅎ) 일반적인 조건이 아닌 특별한 조건(특정 인덱스(4번타자)가 고정되어 있음(0번) -> 따로 처리로직을 짜야 함)이 붙었으며, 타자가 안타, 홈런, 아웃을 했을 떄의 경우의 수를 각각 따로 처리해줘야 해서 좀..골치가 아프다. 특히 인풋으로 상상 이상의 값이 들어오는 걸 감안한다면,, 점수를 계산할 때 모든 경우의 수를 다 체크했는지 확인해줘야 한다. 아웃일 땐 간단한데, 홈런을 쳤을 때 1,2,3루를 모두 리셋해야 하며, 점수를..
Java 기초:: Class란? Class vs Object, OOP의 4요소 [ OOP란? ] Object Oriented Programming, 즉 객체 지향 설계를 뜻한다. [ OOP의 4요소 ] 1. Encapsulation(정보 은닉): 한 클래스에 담겨 있는 데이터와 메소드 중 중요한 것은 클래스 내부에서만 접근 가능하고, 외부에서 필요한 기능만을 공개한다. 2. Inheritance(상속): 객체를 정의할 때 기존에 존재하는 객체를 상속받도록 하면 부모의 데이터와 메소드를 재사용하 수 있다. 3. Polymorphism(다형성): 같은 타입, 같은 메소드를 다양한 방법으로 실행 가능하다. 4. Abstraction(추상화): 현실세계의 여러 객체들의 공통적이고 중요한 특징들을 뽑아내는 것. OOP의 3요소는 여기서 정보 은닉을 제외한 상속, 다형성, 추상화이다. [ C..
Java Data type - 까먹기 쉬운 문법 정리(C와의 차이점 위주) C는 조건문 내에서 연산의 결과값이 0이면 true, 0이 아니면 false로 처리하지만, java는 무조건 boolean 자료형인 true, 혹은 false 만 조건문 내에 오는 것을 허용한다. -> boolean 자료형의 변수에도 0이나 1 같은 숫자가 아니라, 무조건 true 혹은 false만 올 수 있음. char 변수에도 숫자를 넣을 수 있다 -> 이 때, 4바이트에서 2바이트로 데이터 손실이 일어나므로 명시적 형변환 필요. ( 예: char a = (char)65; ) java의 data type 별 표현 가능 범위. 정수형 - byte, short, int, long 실수형 - float, double 문자형 - char 음수를 나타낼 땐 제일 앞 (왼쪽)비트 만큼 -1배 해줬다가 그 오른쪽..
2020 회고와 2021 다짐! 눈 감았다 뜨니 1년이 지나갔다... 아직 준비된 것이 없어 취업은 바라지도 않았다만 세상 난 정말 모자란 것이 많다는 것을 뼈저리게 느꼈다 이런 백지 상태로 취업을 했다면 거기서도 분명 사고를 치거나, 맘고생을 했거나..했을거기 때문에 사실 오히려 좀 다행인것 같다. ㅋㅋㅋㅋ 그래서 2020 내가 무엇이 부족했는지 그리고 그 점들을 2021에 어떻게 채울지 한번 생각해보는 시간을 가지도록 했다! [ 2020 (기억나는) 서류 접수 기업 및 교육과정, 결과 ] 20학점 듣고 프로젝트 하고... 정신 없어서 서류도 안쓰려고 했는데 경험삼아 써보는게 좋을 것 같아서... 한번 써보았다! 근데 쓰다 보니 욕심이 생겨서 채용공고 중 괜찮다 싶은 기업들은 다 써봤다 ㅋㅋㅋㅋㅋ 그래서 학점도 못챙기고... 너무 조..
ROS가 무엇인가, ROS의 특징, 노드통신 =================== 들어가는 짧은 잡담 글 ==================== 코딩에 대해서 1도 모르고 전공에도 관심없었던 새내기 시절, 갑자기 기계과 친구한테 카톡이왔다. "너 혹시 ROS가 뭔지 아니..?" 뭐라도 도움을 주고 싶었지만 아무것도 모르는 새내기(강조)는 아무 도움도 줄 수 없어서 "로즈..?그게뭐야..?" 라고 답을 하고 말았던 기억이 있다..ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ(머쓱) 친구는 그냥 아..아니야! 하고 사라졌음 ㅎ 아무튼 그랬던 내가 3년 뒤 ROS 공부를 하게될 줄이야 세상만사 어떻게 될지 모르는게 人生이구만,,,, ======================================================= [ ROS란,, ] ROS는 Robot Op..
힙(Heap) - 특정한 조건을 갖춘 이진트리 - 특정한 조건이란? 1) root 노드가 언제나 전체 트리 중 최댓값(max heap) 혹은 최솟값(min heap) -> 자신의 서브트리 (왼쪽이건 오른쪽이건)보다 무조건 크거나(max heap), 무조건 작다 (min heap) -> 재귀적정의 2) 완전 이진 트리 -> 0~level-1 까진 포화, level 번째 에선 포화는 아니더라도 왼쪽부터 순차적으로 데이터가 있음 3) 오른쪽 서브트리와 왼쪽 서브트리 사이의 순서는 정의되지 않았다. - 이진 탐색 트리와 달리 완전 이진 트리이지만, 노드의 자식 사이의 배치가 정해진 바 없어 이진 탐색 트리처럼 검색 기능을 제공하지 않는다. - 순회도 제공하지 않는다. [ Max Heap의 추상적 자료구조 ] 1) __init..