기록물 저장소 44

[SW 마에스트로 12기] 1차 코딩 테스트 후기

문제가 될 시 삭제하겠습니다. 그리고 합격시 공개하겠습니다. 난이도를 붙였지만, 개인적인 의견이고 나대는 목적이 아니라 난이도를 공유하려고 함이고, 제가 소마 준비할때, 코딩 테스트가 어떤 난이도를 갖고있는지 아예 몰라서 이곳저곳 뒤져서 정보를 얻었기 때문에 대략적인 공부의 범위를 설계할때 도움을 받았던 것 같습니다. 설명회 때, 난이도 질문이 많이 나오기도 하고 공식적으로 난이도가 어떠어떠 하다를 답해주기 힘들기 때문에 공유하면 좋을 것 같다고 생각했습니다. 문제를 푸는 방법에는 여러 알고리즘을 사용할 수 있고 또 알고리즘을 사용하지 않고 애드혹 알고리즘 처럼 자신만의 참신한 방법으로 풀 수 있습니다. 정답 개수를 알려주지 않았기 때문에 제가 푼 방식이 틀렸을 수도 있기에 참고하실때 주의해주시면 될 것..

21년 03월 한 달 정리

이번달 빠른 정리우선 SW마에스트로 준비를 엄청했다. 하루가 10시간이라면 6시간 정도 준비를 했다. 1차 코테, 2차 코테를 붙었는데, 면접이 정말 힘들었다. CS라는 말을 처음들어봤다. CS지식을 공부해야했는데, 정말 하나도 몰랐기 때문에 기초부터 차근차근 공부했지만 1주일이라는 시간이 너무 부족했다. 최대한 큰거 위주로 외우려고 노력했다. 여러 블로그들을 돌아다니면서 이해하려고 노력했다. 면접 때 질문이 나와서 다행이었다. 만약 안나왔으면 억울할 뻔했지만, 언젠가는 해야하는 공부라고 생각하면.. 책읽기. 일단 이건 실패했다. 집이랑 도서관이랑 5분 정도 거리다. 책을 6권정도 두번 빌렸었는데 한권도 안읽었다. 100페이지 정도 읽은게 전부다. 군대에 있을때는 책을 정말 많이 읽었는데 사회는 유혹이 ..

[넷플릭스] 보이스 2 짧리뷰

아쉬운 빌런 시즌 1에서는 강권주의 아버지와 무진혁의 아내를 살해한 지독한 빌런이 등장하는데, 빌런의 수위가 넘사벽이었다. 솔직히 시즌 2를 보기전에 시즌 1보다 더 악랄한 빌런을 기대했지만 그 이하인 듯 싶었다. 머리를 되게 잘 써서 범죄 설계와 사람을 잘 사용하는 것은 이전 빌런보다 뛰어났지만, 임팩트가 강하지 못했다. 결국에는 좀 허무했다. 사회적인 내용 드라마는 혐오범죄를 말하고 있는데, 2018년에는 혐오범죄들이 많았나보다. 그 전년도 즈음부터인가, 남녀갈등과 노인혐오, 아동학대 등 여러 사회적 문제들이 이슈화됐던적이 있었던 것 같다. 드라마에 등장하는 빌런은 계속해서 오글거리는 멘트를 치는데, 자기가 세상을 구원해줘야 한다며 쓰레기들을 처리해야한다 뭐 어쩌고저쩌고, 아무튼 좀 오글거렸지만, 대..

[SW 마에스트로] 면접 대비 기본 용어 정리

우선 저는 컴퓨터 과학을 배운적이 없고, 개발은 조금 해봤어도, 이론은 한번도 제대로 공부한 적이 없기 때문에 여기다가 기본 용어를 간략하게 짚고 넘어가겠습니다. 한 줄 안으로 끝내겠습니다. 출처가 없는 것은 위키백과가 출처입니다. 다형성 설명1 필드 설명1 메소드 설명1 바인딩 설명1 런타임(runtime) : 컴퓨터 프로그램이 실행되고 있는 동안의 동작. 런타임 환경(runtime environment) : 실행되는 동안 프로세스나 프로그램을 위한 SW 서비스를 제공하는 VM의 상태. 안드로이드 런타임(ART) : 안드로이드 OS아래 만들어진 런타임 환경의 VM이다. 달빅 가상 머신(DVM) : 댄 본스타인이 구현한 레지스터 머신형태의 가상 머신. 어셈블리어(assembly language) : 기계..

[SW 마에스트로] 면접 대비 Unity와 C#의 이론과 예상 질문

Unity 코루틴 신발 아이템을 먹었을 때, 속도가 X2 배 증가하는 효과를 10초간 유지. 지연시키기 최적화 오브젝트 풀링 생명주기 Reset -> Awake -> OnEnable -> Start -> FixedUpdate -> OnTrigger -> OnCollision -> Update -> LateUpdate -> OnDisable -> OnDestroy -> OnApplicationQuit Vector : 동적배열의 클래스 템플릿. 요수가 추가 되거나 삭제될 때 자동으로 메모리를 재할당하여 크기를 동적으로 변경합니다. List : 이중연결리스트의 클래스 템플릿. 빠른 삽입과 삭제, 입의 접근은 불가능. C# 객체 지향 언어 .NET Framework라는 실행환경과 조화되어 움직인다. JVM과 비..

[SW 마에스트로] 면접 대비 Android Studio의 이론과 예상 질문

아래의 사이트의 정리된 내용을 정리했습니다. 후에 정보가 추가되면 출처를 밝히도록 노력하겠습니다. 누락된 출처가 있고 정보가 섞여서 정리 될 수 있습니다. Android의 이론은 예전에 개발을 했을 때 조금씩 공부했어서 뭐가 뭔지는 느낌만 들지만 제대로 아는 것은 하나도 없다. 이렇게 말할 수 있습니다. Android 전체 내용1 Android 계층구조 추가설명1 Android 4대 컴포넌트 Activity(액티비티) UI 화면을 담당하는 컴포넌트. 자바소스에서 Activity클래스를 상속해야한다. 기본적으로 가지고 있는 생명주기 메소드를 재정의하여 원하는 기능을 구현하는 방식으로 제작. Activity Life Cycle(액티비티 생명 주기) 1) 재개(create, start, resume) 2) 일..

[SW 마에스트로] 면접 대비 Python의 이론과 예상 질문

아래의 사이트의 정리된 내용을 정리했습니다. 후에 정보가 추가되면 출처를 밝히도록 노력하겠습니다. 누락된 출처가 있고 정보가 섞여서 정리 될 수 있습니다. 저는 Python언어의 이론을 1도 모르기 때문에 여기 적힌 내용은 모두 구글링한 것입니다. github.com/JaeYeopHan/Interview_Question_for_Beginner/tree/master/Python Python Generator Generator(제네레이터)는 제네레이터 함수가 호출될 때 반환되는 iterator(이터레이터)의 일종이다. yeild 구문을 사용해 데이터의 반환과 처리 시점을 정한다. 진입점이 여러 개. 원하는 시점에 원하는 데이터를 받을 수 있다. 클래스를 상속했을 때 메서드 실행 방식 __getattribut..

[SW 마에스트로] 면접 대비 JAVA의 이론과 예상 질문

아래의 사이트의 정리된 내용을 정리했습니다. 후에 정보가 추가되면 출처를 밝히도록 노력하겠습니다. 누락된 출처가 있고 정보가 섞여서 정리 될 수 있습니다. 저는 JAVA언어의 이론을 1도 모르기 때문에 여기 적힌 내용은 모두 구글링한 것입니다. github.com/JaeYeopHan/Interview_Question_for_Beginner/tree/master/Java 구체적인 질문 LIST 1 기본용어 추가설명1 인터페이스 추가설명1 기본 용어정리 1 JAVA JVM(JAVA Virtual Machine) JVM 자바 가상 머신(가상머신 : 프로그램의 물리적 머신과 유사한 머신을 소프트웨어로 구현)의 약자를 딴 용어. 자바 애플리케이션을 클래스 로더를 통해 읽어들여 자바 API와 함께 실행한다. JVM..

[SW 마에스트로] 면접 대비 CS의 이론과 예상 질문

아래의 사이트의 정리된 내용을 정리했습니다. 후에 정보가 추가되면 출처를 밝히도록 노력하겠습니다. 누락된 출처가 있고 정보가 섞여서 정리 될 수 있습니다. CS는 처음 공부해봅니다. 자료구조는 학교에서 배운적이 있습니다만, 군생활을 하며 기억이 사라졌습니다. CS전체 내용 MVC패턴 추가설명1 Restfil API 추가설명1 객체 지향 프로그래밍 추가설명1 opentutorials 객체 지향 프로그래밍 추가설명2 jeong-pro 함수형 프로그래밍 추가설명1 delmasong 네트워크 추가설명1 DNS Round Robin추가설명1 프로세스와 스레드 추가설명1 스케줄러 추가설명1 jhnyang 동기와 비동기 추가설명1 k39335 인덱스 추가설명1 mangkyu 정규화 추가설명1 yaboong 트랜잭션 ..

[SW 마에스트로] 면접 대비 코딩테스트 수행 내역

SW 마에스트로가 제작한 문제의 저작권은 SW 마에스트로에게 있고, 내가 풀었던 코드의 저작권은 나에게 있다. 저작권법에 의하면 원칙은 원 저작권 1번 문제 : BFS탐색 문제 BFS는 큐 선입선출, 앞에서 부터 빼내는 자료구조를 사용해서 구현이 가능하다. 2번 문제 : DP문제 0번째 발판을 탐색해봤고 0, 1, 2번 발판이 사이클을 형성하면 0의 길이는 3으로 알아낼 수 있다. 또한 1, 2의 길이도 3인 것을 알 수 있다. DP를 사용하지 않는다면, 1, 2의 발판도 탐색을 해야하고 비효율이 발생한다. 3번 문제 : 분할정복, 백트래킹 처음에 봤을 때, DP인줄 알았지만 매 케이스마다 왼쪽, 오른쪽, 위, 아래의 다음 케이스를 탐색하는 것이고 그 중 어떤 것도 재사용하긴 힘들어보여 단순 백트래킹으로..