전체 글

소프트웨어학부 재학중/개발을 기록합니다.
크롤링은 파이썬을 이용해서 했으며 BeautifulSoup을 이용했다.BeautifulSoup이란?  파이썬 라이브러리로, HTML 및 XML 파일에서 데이터를 추출해준다코랩으로 코드를 작성하였기에 따로 BeautifulSoup install은 해주지 않았었다. 왜 네이버뉴스를 크롤링을 하는 것인가? 우리가 가장 많이 사용하는 포털 네이버, 네이버에 모든 언론사들이 있기에 한 언론사를 지정하기 보다는 모든 언론사에 대해 분석을 하고 싶어 네이버뉴스를 선택했습니다. 프로젝트의 최종 목표는 "링크를 넣으면" --> "분석해준다" 였기에 크롤링이 필수였죠크롤링을 해서 추출하는 데이터는 뉴스 제목, 이미지, 본문, 날짜, 기자명, 카테고리, 언론사 였습니다. 먼저 네이버 뉴스를 들어가보겠습니다. 사실 eleme..
서버란? 서버는 OS에 의해 동작하는 프로세스이며 클라이언트의 역할을 하는 프로세스와 소켓을 통해 IPC(Inter-Process Coummunication)를 수행하는 것이라고 표현할 수 있다. 학습목표 1. 서버의 정의와 역할 이해하기 2. 서버가 어떻게 구축되는지 이해하기 이것을 기억하는 것이 목표 🥸 이제까지 개발을 위해서 프레임워크만 공부했다면, 이제 본격적으로 원리를 깊이 이해할 차례이다. 오늘은 데이터의 송수신 과정에 대해 깊이 알아보자. 서버와 클라이언트가 각각 하나의 프로세스로써 어떻게 데이터를 주고받는지 이해하기 위해서는 IP주소와 포트번호를 알아야 한다. IP주소와 포트번호 (OSI 7계층과 TCP/IP계층을 대략 알아야 한다. 모른다면 이것부터 알아두기) IP주소는 컴퓨터가 네트워크..
Bubblow 버블로우(Bubblow)는 'bubble'과 'low'의 합성어로, "버블을 날려버리자!"라는 의미를 담고 있다. 여기에서 'bubble'은 단순한 비눗방울이 아니라, 필터 버블을 지칭한다. 필터 버블이란 인터넷 정보 제공자가 사용자에게 맞춤형 정보를 제공함으로써 사용자가 필터링된 정보만을 접하게 되는 현상을 말한다. 알고리즘이 사용자가 최근에 관심 있어 하는 콘텐츠를 선별해 보여주는 것은 편리하다고 느껴질 수 있으나, 필터 버블에 갇혀버리면 사용자는 특정 주제와 편향된 정보만을 접하게 되며, 이는 위험도를 증가시킨다. 특히 우리 팀은 뉴스에서 나타나는 문제에 집중했다. 최근 미디어 환경에서 퍼져 있는 '가짜뉴스'까지 고려하면 확증편향의 문제가 더욱 심각해진다고 느꼈다. 그래서 가짜뉴스로 ..
문제 정답 bfs로 구현해야겠다. 그리고 구현은 했지만, 총 인구 이동을 구해야 했다. 그래서 인구 이동을 하고 난 후의 변한 상황을 다시 graph에 반영하고 반복문을 돌려야 했는데, 그게 잘 구현이 안됐다 먼저 인구이동 되는 x,y좌표를 넣어주기 위해서 united라는 배열을 생성했다 그리고 bfs에서 return값으로 넣주었다. 결국 while 문으로 연합된 나라가 있는 경우 flag=1로 설정해서 답을 구해준다. county라고 받고 county가 있는 경우 값을 바꾸어준다 의외로 구현은 납득 가능한 수준의 문제였다:( #bfs로 상하좌우 다 파악을 해서 count를 해준다 #sum도 구한다 #방문하지 않거나 연합인 국가가 아니면 반복해서 파악한다 from collections import deq..
문제 인체에 치명적인 바이러스를 연구하던 연구소에서 바이러스가 유출되었다. 다행히 바이러스는 아직 퍼지지 않았고, 바이러스의 확산을 막기 위해서 연구소에 벽을 세우려고 한다. 연구소는 크기가 N×M인 직사각형으로 나타낼 수 있으며, 직사각형은 1×1 크기의 정사각형으로 나누어져 있다. 연구소는 빈 칸, 벽으로 이루어져 있으며, 벽은 칸 하나를 가득 차지한다. 일부 칸은 바이러스가 존재하며, 이 바이러스는 상하좌우로 인접한 빈 칸으로 모두 퍼져나갈 수 있다. 새로 세울 수 있는 벽의 개수는 3개이며, 꼭 3개를 세워야 한다. 예를 들어, 아래와 같이 연구소가 생긴 경우를 살펴보자. 2 0 0 0 1 1 0 0 0 1 0 1 2 0 0 1 1 0 1 0 0 0 1 0 0 0 0 0 0 0 0 0 0 1 1 ..
문제 설명 카카오에 신입 개발자로 입사한 "콘"은 선배 개발자로부터 개발역량 강화를 위해 다른 개발자가 작성한 소스 코드를 분석하여 문제점을 발견하고 수정하라는 업무 과제를 받았습니다. 소스를 컴파일하여 로그를 보니 대부분 소스 코드 내 작성된 괄호가 개수는 맞지만 짝이 맞지 않은 형태로 작성되어 오류가 나는 것을 알게 되었습니다. 수정해야 할 소스 파일이 너무 많아서 고민하던 "콘"은 소스 코드에 작성된 모든 괄호를 뽑아서 올바른 순서대로 배치된 괄호 문자열을 알려주는 프로그램을 다음과 같이 개발하려고 합니다. '(' 와 ')' 로만 이루어진 문자열이 있을 경우, '(' 의 개수와 ')' 의 개수가 같다면 이를 균형잡힌 괄호 문자열이라고 부릅니다. 그리고 여기에 '('와 ')'의 괄호의 짝도 모두 맞을..
문제 N개의 수로 이루어진 수열 A1, A2, ..., AN이 주어진다. 또, 수와 수 사이에 끼워넣을 수 있는 N-1개의 연산자가 주어진다. 연산자는 덧셈(+), 뺄셈(-), 곱셈(×), 나눗셈(÷)으로만 이루어져 있다. 우리는 수와 수 사이에 연산자를 하나씩 넣어서, 수식을 하나 만들 수 있다. 이때, 주어진 수의 순서를 바꾸면 안 된다.예를 들어, 6개의 수로 이루어진 수열이 1, 2, 3, 4, 5, 6이고, 주어진 연산자가 덧셈(+) 2개, 뺄셈(-) 1개, 곱셈(×) 1개, 나눗셈(÷) 1개인 경우에는 총 60가지의 식을 만들 수 있다. 예를 들어, 아래와 같은 식을 만들 수 있다.1+2+3-4×5÷61÷2+3+4-5×61+2÷3×4-5+61÷2×3-4+5+6식의 계산은 연산자 우선 순위를 무..
DeFi(탈중앙화 금융)란? DeFi는 블록체인 기술, 특히 이더리움과 같은 탈 중앙화된 네트워크를 기반으로 하는 일련의 금융 서비스 및 응용 프로그램을 나타낸다. 이는 중개인의 필요성을 제거하고 전통적인 금융 시스템을 탈중앙화하고 향상시키시 위한 것이다 중개인없고, 저비용 및 신속성, 글로벌엑세스: 누구나 인터넷에 접속하여 참여할 수 있다 DeFi 전통 금융 보유 자신의 자금을 보유 회사가 자금을 보유 통제 자신의 자금의 동선과 사용 방법을 통제 회사가 자금을 관리하지 않고 위탁 전송 몇 분 내에 자금 이체 수동 프로세스로 인해 결제가 몇 일 걸릴 수 있음 익명성 거래 활동은 익명 금융 활동은 개인 식별 정보와 깊게 연결 액세스 누구에게나 열려 있음 금융 서비스를 사용하려면 신청해야 함 투명성 코드 및..
한덩이
Run to Develop