본문 바로가기

전체 글

(201)
20210515_TIL 오늘 한 일 : 1.코딩테스트 1문제 풀기 2.google it fundamental강의 듣기 3.프로페셔널 스튜던트 오디오북 듣기 4.코딩을 지탱하는 기술 독서 5.기상청 웹크롤링: 1.코딩테스트 1문제 풀기 : 오늘은 '모의고사'문제를 풀었다. 꽤 긴 시간이 걸렸다. 그래도 포기하지 않고 고민하다가 2-3시간만에 문제를 풀었다. 뿌듯. 그렇지만, 다른 사람들의 문제풀이를 본 순간 주늑들었다. 그들의 코드는 저토록 깔끔하고 간결한데, 나는 너무 길고 지저분했다. 그래도 아직은 욕심내지 말것. 이상향은 가지되, 조급하지는 말것. 2.google it fundamental강의 듣기 : 오늘 들었던 구글 강의는 컴퓨터의 역사에 대한 내용이었다. 컴퓨터가 어떻게 발전해왔는지에 대해서 파스칼 시대부터 현대까지 ..
[프로그래머스]모의고사 문제 설명 : 수포자는 수학을 포기한 사람의 준말입니다. 수포자 삼인방은 모의고사에 수학 문제를 전부 찍으려 합니다. 수포자는 1번 문제부터 마지막 문제까지 다음과 같이 찍습니다. 1번 수포자가 찍는 방식: 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, ... 2번 수포자가 찍는 방식: 2, 1, 2, 3, 2, 4, 2, 5, 2, 1, 2, 3, 2, 4, 2, 5, ... 3번 수포자가 찍는 방식: 3, 3, 1, 1, 2, 2, 4, 4, 5, 5, 3, 3, 1, 1, 2, 2, 4, 4, 5, 5, ... 1번 문제부터 마지막 문제까지의 정답이 순서대로 들은 배열 answers가 주어졌을 때, 가장 많은 문제를 맞힌 사람이 누구인지 배열에 담아 return 하도록 solution 함수를..
202105014_TIL 1.코딩을 지탱하는 기술 : 좋은 책이다. 여러가지 코딩에 쓰이는 개념에 대해서 근본부터 파헤치는 것 같은 책이다. 오늘은 컨테이너에 대해서 배웠다. 컨테이너란 그러니까 무언가를 담는 상자를 의미한다. 대표적인 컨테이너로는 배열과 연결리스트가 있다. 배열은 순서대로 담는 상자, 연결리스트는 무언가 이름을 붙여서 연결짓는 방식으로 담는 상자이다. 이 각각의 개념들이 메모리 상에 저장될 때, 어떤 식으로 저장되는지를 배웠다. 또한 이 두 저장방식의 장단점을 배웠다. 배열은 무언가 삭제하려면 시간이 많이 걸린다. 순서대로 저장되어있기 때문에, 중간에 무언가를 지우면 뒤에 있던 순서들까지 다 옮겨야 한다. 행동이 많아진다. 반면 연결리스트는 순서와 상관없이 상자에 담을 수 있기 때문에, 비어있는 곳이면 어느곳이..
[프로그래머스] 폰켓몬 문제풀이 문제 설명 : 당신은 폰켓몬을 잡기 위한 오랜 여행 끝에, 홍 박사님의 연구실에 도착했습니다. 홍 박사님은 당신에게 자신의 연구실에 있는 총 N 마리의 폰켓몬 중에서 N/2마리를 가져가도 좋다고 했습니다. 홍 박사님 연구실의 폰켓몬은 종류에 따라 번호를 붙여 구분합니다. 따라서 같은 종류의 폰켓몬은 같은 번호를 가지고 있습니다. 예를 들어 연구실에 총 4마리의 폰켓몬이 있고, 각 폰켓몬의 종류 번호가 [3번, 1번, 2번, 3번]이라면 이는 3번 폰켓몬 두 마리, 1번 폰켓몬 한 마리, 2번 폰켓몬 한 마리가 있음을 나타냅니다. 이때, 4마리의 폰켓몬 중 2마리를 고르는 방법은 다음과 같이 6가지가 있습니다. 첫 번째(3번), 두 번째(1번) 폰켓몬을 선택 첫 번째(3번), 세 번째(2번) 폰켓몬을 선택..
20210513_TIL 다시 시작 이름을 바꿨다. DIL(daily) -> TIL(today)로. 이유 : 1)이런 개념이 있다는 걸을 새롭게 발견했기 때문. 2)다른 사람들이 통용하는 개념이라면, 검색에도 그나마 잘 잡히겠다고 생각. 3)검색에 잡히는게 중요한 이유는 내가 공부한걸 공유하려고 블로그를 시작한것이기 때문. 오늘 한 일 1.코딩테스트 2문제 풀기 2.'프로페셔널 스투턴드' 오디오북 독서 3.유데미에서 자바스크립트 애니메이션 강의듣기 : 1.코딩테스트 : 오늘은 '내적'문제와 '완주하지 못한 선수들'이라는 문제를 풀었다. 내적은 비교적 쉽게 30분도 안되어 풀었고, '완주하지 못한 선수들'문제는 꽤 오랜 시간이 걸렸던것 같다. 한 2시간? 그래도 2시간만에 문제를 풀어낼 수 있었어서 다행이다. 포기하지 않았던 스스로에게 대견..
[프로그래머스] 완주하지 못한 선수 문제풀이 스터디원과 함께 하루 1개씩 코딩테스트 문제를 풀기로 했다. 오늘 풀었던 문제는 프로그래머스의 [완주하지 못한 선수] 라는 문제다. 문제 설명 : 수많은 마라톤 선수들이 마라톤에 참여하였습니다. 단 한 명의 선수를 제외하고는 모든 선수가 마라톤을 완주하였습니다. 마라톤에 참여한 선수들의 이름이 담긴 배열 participant와 완주한 선수들의 이름이 담긴 배열 completion이 주어질 때, 완주하지 못한 선수의 이름을 return 하도록 solution 함수를 작성해주세요. 제한 사항 : 마라톤 경기에 참여한 선수의 수는 1명 이상 100,000명 이하입니다. completion의 길이는 participant의 길이보다 1 작습니다. 참가자의 이름은 1개 이상 20개 이하의 알파벳 소문자로 이루어져 ..
[프로그래머스] '내적' 문제풀이 길이가 같은 두 배열이 주어지면, 각 배열의 i번째 요소들을 각각 곱해서 다 더해주는 문제이다. 주어진 문제는 다음과 같다. [길이가 같은 두 1차원 정수 배열 a, b가 매개변수로 주어집니다. a와 b의 내적을 return 하도록 solution 함수를 완성해주세요. 이때, a와 b의 내적은 a[0]*b[0] + a[1]*b[1] + ... + a[n-1]*b[n-1] 입니다. (n은 a, b의 길이)] 아래에는 내가 풀었던 문제의 정답이다. C =list() def solution(a, b): for one,two in zip(a,b): C.append(one*two) answer = sum(C) return answer 문제를 보며 내가 생각한 문제에 대한 접근법은 다음과 같다. 1)우선, 각 배열..
2021.05.05 일지 [오늘 한 일&목차] 1.스파르타코딩 2-3주차 수업 듣고 실습 1)ajax 사용법 2)웹크롤링 3)몽고DB사용해보기 4)지니뮤직 best50곡 웹크롤링하기 2.영어공부 1.스파르타 코딩 2-3주차 수업 듣고 실습 : 1)ajax사용법 : 어제의 수업에 이어 ajax를 이용해, api 데이터를 받아오는 연습을 했다. 몇번 퀴즈를 풀고, 2)웹크롤링: 웹 크롤링은 이름을 들어보기만 했다. 오늘 처음으로 사용해본 것이었는데, 익숙하지가 않았다. 처음이니 당연한 것이다. 아마 계속 사용하다보면 다른 언어들과 친숙해진것처럼 이것의 활용에도 익숙해질 것 같다. 3)몽고db: 몽고 db도 처음으로 사용해봤다. 딕셔너리 형태로 데이터를 저장하는 용도로 사용한다고 한다. 많은 데이터를 저장하려고 할 때, 사용하는건데 ..