분류 전체보기
-
TCP/IP 와 UDP/IP[+] Security [+]/네트워크 2020. 6. 15. 21:33
어느 화창한 6월의 오후, 나는 여느 때와 같이 코딩을 하며 시간을 보내고 있었다. 머신러닝으로 학습된 모델을 API로 만들어 원격으로 요청할 수 있게 끔 하는 작업이었는데, 연구실 PC는 유동 IP를 사용하고 있어서, 고정 IP를 발급 받아야 외부에서 접근할 수 있다고한다. 근데 IP발급 요청을 작성하는 칸에 무슨 외계어 마냥 맥주소, 통신방식, 단말종류 어쩌구 저쩌구 이해할 수 없는 용어들이 홍수처럼 쏟아지니, 대충 기본값으로 채워서 신청했다. 그리고 몇일 뒤 발급받은 IP로 통신을 해보니.... 될리가 있나.... 마감기한이 얼마 남지 않아서, 고정IP를 발급받은 교수님 PC에서 서버를 급하게 실행했다. 교수님께서는 정보보안을 한다는 애가 네트워크도 몰라서 되겠냐 하셨고 무지함과 무력함을 용납할 수..
-
블랙잭에서 승리하는 전략![+] 프로젝트 [+]/블랙잭에서 승리하는 전략! 2020. 6. 11. 05:08
I. 들어가기에 앞서... 때는 아마 2019년 여름... 친구와 술을 마시다보니 어쩌다 카지노 펍 이라는 곳에 가게 됬다. 술도 마시고 겜블도 할 수 있는 (물론 가짜 돈으로) 그런 곳이다. 그곳에서 할만한 게임 중에 '블랙잭'이라는 게임이 있었는데, 돈을 전혀 따지 못했다... 애초에 카지노 측에 유리하게끔 설계된 게임이라지만... 어찌 이리도 처참히 털릴 수가 있단 말인가... 참담하고 비통한 마음을 뒤로하고, 몇일 뒤 카지노 펍을 다시 갔는데... 그 친구는 벌써 칩이 1000단위가 넘었다. ??? 아니 어떻게 돈을 딸 수 있는 구조가 아닌데? 시작할때 칩 50으로 무슨수로 1000을 넘기나? 어떻게 이렇게 번건가 물어보았더니, 50대 50일때 승부수를 잘던져서 어찌저찌 잘 땄다고하는데.. 납득이..
-
[Programmers] 후보키[+] 알고리즘 [+] 2020. 5. 28. 04:01
[문제 설명] 후보키 프렌즈대학교 컴퓨터공학과 조교인 제이지는 네오 학과장님의 지시로, 학생들의 인적사항을 정리하는 업무를 담당하게 되었다. 그의 학부 시절 프로그래밍 경험을 되살려, 모든 인적사항을 데이터베이스에 넣기로 하였고, 이를 위해 정리를 하던 중에 후보키(Candidate Key)에 대한 고민이 필요하게 되었다. 후보키에 대한 내용이 잘 기억나지 않던 제이지는, 정확한 내용을 파악하기 위해 데이터베이스 관련 서적을 확인하여 아래와 같은 내용을 확인하였다. 관계 데이터베이스에서 릴레이션(Relation)의 튜플(Tuple)을 유일하게 식별할 수 있는 속성(Attribute) 또는 속성의 집합 중, 다음 두 성질을 만족하는 것을 후보 키(Candidate Key)라고 한다. 유일성(uniquene..
-
[Programmers] K번째수[+] 알고리즘 [+] 2020. 5. 28. 00:35
[문제 설명] 배열 array의 i번째 숫자부터 j번째 숫자까지 자르고 정렬했을 때, k번째에 있는 수를 구하려 합니다. 예를 들어 array가 [1, 5, 2, 6, 3, 7, 4], i = 2, j = 5, k = 3이라면 array의 2번째부터 5번째까지 자르면 [5, 2, 6, 3]입니다. 1에서 나온 배열을 정렬하면 [2, 3, 5, 6]입니다. 2에서 나온 배열의 3번째 숫자는 5입니다. 배열 array, [i, j, k]를 원소로 가진 2차원 배열 commands가 매개변수로 주어질 때, commands의 모든 원소에 대해 앞서 설명한 연산을 적용했을 때 나온 결과를 배열에 담아 return 하도록 solution 함수를 작성해주세요. 제한사항 array의 길이는 1 이상 100 이하입니다...
-
[Programmers] 체육복[+] 알고리즘 [+] 2020. 5. 28. 00:18
[문제 설명] 점심시간에 도둑이 들어, 일부 학생이 체육복을 도난당했습니다. 다행히 여벌 체육복이 있는 학생이 이들에게 체육복을 빌려주려 합니다. 학생들의 번호는 체격 순으로 매겨져 있어, 바로 앞번호의 학생이나 바로 뒷번호의 학생에게만 체육복을 빌려줄 수 있습니다. 예를 들어, 4번 학생은 3번 학생이나 5번 학생에게만 체육복을 빌려줄 수 있습니다. 체육복이 없으면 수업을 들을 수 없기 때문에 체육복을 적절히 빌려 최대한 많은 학생이 체육수업을 들어야 합니다. 전체 학생의 수 n, 체육복을 도난당한 학생들의 번호가 담긴 배열 lost, 여벌의 체육복을 가져온 학생들의 번호가 담긴 배열 reserve가 매개변수로 주어질 때, 체육수업을 들을 수 있는 학생의 최댓값을 return 하도록 solution 함..
-
[Programmers] [3차] n진수 게임[+] 알고리즘 [+] 2020. 5. 27. 21:47
[문제 설명] N진수 게임 튜브가 활동하는 코딩 동아리에서는 전통적으로 해오는 게임이 있다. 이 게임은 여러 사람이 둥글게 앉아서 숫자를 하나씩 차례대로 말하는 게임인데, 규칙은 다음과 같다. 숫자를 0부터 시작해서 차례대로 말한다. 첫 번째 사람은 0, 두 번째 사람은 1, … 열 번째 사람은 9를 말한다. 10 이상의 숫자부터는 한 자리씩 끊어서 말한다. 즉 열한 번째 사람은 10의 첫 자리인 1, 열두 번째 사람은 둘째 자리인 0을 말한다. 이렇게 게임을 진행할 경우, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 1, 0, 1, 1, 1, 2, 1, 3, 1, 4, … 순으로 숫자를 말하면 된다. 한편 코딩 동아리 일원들은 컴퓨터를 다루는 사람답게 이진수로 이 게임을 진행하기도 하는데, 이..
-
[Programmers] [3차] 파일명 정렬[+] 알고리즘 [+] 2020. 5. 27. 21:17
[문제 설명] 파일명 정렬 세 차례의 코딩 테스트와 두 차례의 면접이라는 기나긴 블라인드 공채를 무사히 통과해 카카오에 입사한 무지는 파일 저장소 서버 관리를 맡게 되었다. 저장소 서버에는 프로그램의 과거 버전을 모두 담고 있어, 이름 순으로 정렬된 파일 목록은 보기가 불편했다. 파일을 이름 순으로 정렬하면 나중에 만들어진 ver-10.zip이 ver-9.zip보다 먼저 표시되기 때문이다. 버전 번호 외에도 숫자가 포함된 파일 목록은 여러 면에서 관리하기 불편했다. 예컨대 파일 목록이 [img12.png, img10.png, img2.png, img1.png]일 경우, 일반적인 정렬은 [img1.png, img10.png, img12.png, img2.png] 순이 되지만, 숫자 순으로 정렬된 [img1..
-
[Programmers] [1차] 뉴스 클러스터링[+] 알고리즘 [+] 2020. 5. 25. 16:00
[문제 설명] 뉴스 클러스터링 여러 언론사에서 쏟아지는 뉴스, 특히 속보성 뉴스를 보면 비슷비슷한 제목의 기사가 많아 정작 필요한 기사를 찾기가 어렵다. Daum 뉴스의 개발 업무를 맡게 된 신입사원 튜브는 사용자들이 편리하게 다양한 뉴스를 찾아볼 수 있도록 문제점을 개선하는 업무를 맡게 되었다. 개발의 방향을 잡기 위해 튜브는 우선 최근 화제가 되고 있는 카카오 신입 개발자 공채 관련 기사를 검색해보았다. 카카오 첫 공채..'블라인드' 방식 채용 카카오, 합병 후 첫 공채.. 블라인드 전형으로 개발자 채용 카카오, 블라인드 전형으로 신입 개발자 공채 카카오 공채, 신입 개발자 코딩 능력만 본다 카카오, 신입 공채.. 코딩 실력만 본다 카카오 코딩 능력만으로 2018 신입 개발자 뽑는다 기사의 제목을 기..