💕
후원
본문 바로가기

분류 전체보기113

[Next JS] Next JS 시작하기 React는 CSR(클라이언트 사이드 렌더링) 방식으로 SPA(싱글 페이지 어플리케이션)를 만들 수 있는 프레임워크입니다. (오늘부터는 존댓말을 쓰기로 했습니다.) CSR 방식인 그냥 리액트의 경우 브라우저가 서버에서 html과 정적 파일을 받아온 후 데이터를 요청해서 받아와 렌더링합니다. 초기에 정적 파일을 다 받아오기 때문에 데이터 요청이 있을 때만 서버에 요청하면 됩니다. 또, JS로 화면에 렌더링되기 때문에 JS를 크롤링 할 수 없는 검색엔진에서는 검색엔진 최적화가 어렵습니다. Next JS는 React 기반으로 만들어진 프레임워크입니다. Next JS를 이용하면 리액트에서 SSR(서버 사이드 렌더링) 방식으로 렌더링을 할 수 있습니다. SSR은 초기에 필요한 데이터를 미리 가져와 데이터가 채워진.. 2021. 2. 6.
[BOJ] 16287. Parcel 16287번: Parcel 입력은 표준입력을 사용한다. 입력의 첫 줄에는 무게 w(10 ≤ w ≤ 799,994)와 A의 원소 개수 n(4 ≤ n ≤ 5,000)이 공백으로 분리되어 주어진다. 다음 줄에는 A의 원소인 n개의 정수 ai ∈ A(1 ≤ i ≤ n)가 www.acmicpc.net 요약하자면, 주어진 배열 A 안의 임의의 4개의 원소들의 합이 W가 되는 경우가 있는지 여부를 출력하는 문제이다. 처음 생각났던 풀이는 앞의 세 원소는 하나씩 고르고 마지막 원소는 lower_bound로 찾기였다. 당연히 세 원소 고르는 것만 O(N^3)이고 N ≤ 5,000인데 될리가 없다. 시간복잡도 O(N^2) 안에 풀어야 하기 때문에 원소들을 두 개씩 묶는다는 아이디어까지는 쉽게 떠올릴 수 있었다. 원소 두 .. 2021. 1. 27.
[BOJ] 13334. 철로 13334번: 철로 입력은 표준입력을 사용한다. 첫 번째 줄에 사람 수를 나타내는 양의 정수 n (1 ≤ n ≤ 100,000)이 주어진다. 다음 n개의 각 줄에 정수 쌍 (hi, oi)가 주어진다. 여기서 hi와 oi는 −100,000,000이상, 100,000,0 www.acmicpc.net 처음 생각했던 풀이는 각 (집, 사무실) 쌍을 시작점 기준으로 정렬한 후 각 쌍을 순회하며 뒤쪽의 끝점들만 따로 정렬한 후 upper_bound로 계산하기...였다. 잘 안 풀리는데다 좋은 풀이도 아닌 것 같아서 매주 일요일마다 진행하는 알고리즘 스터디에 가져갔는데, 이거 우선순위 큐 문제라는 얘기를 듣고 바로 풀이가 생각나서 뚝딱뚝딱 풀었다. struct comp_second { bool operator()(p.. 2021. 1. 27.
[딥러닝] 파이토치 개발환경 구축 www.anaconda.com/products/individual 접속한다. 다운로드 클릭 후 설치파일을 관리자 권한으로 열어서 설치한다. 설치가 끝나면 프롬프트를 실행한다. $ conda create -n pytorch python=3.7 입력하면 파이썬 3.7 기반의 pytorch라는 가상환경이 생긴다. $ conda activate pytorch 가상환경을 켠다. developer.nvidia.com/cuda-toolkit-archive 에서 CUDA를 설치한다. 11.0으로 했다. (왠지 모르겠는데 다운로드 버튼 클릭하면 안 먹하고 새 탭에서 열기 해야 다운로드 창이 열림. 왜지?) 그 와중에 마우스 프로세스 꺼야 한다고 해서 끄고 다른 마우스 끼웠다... 오래 걸린다. pytorch.org/ 에.. 2021. 1. 27.
[딥러닝] 퍼셉트론이란 퍼셉트론은 원래 알고 있던 개념이었는데, 2017학년도 6월 평가원 모의고사 국어 과목 비문학 지문으로 나왔던 걸 기출문제로 풀어봤기 때문이었습니다. 한국 수능 비문학 최고! 아래에 해당 지문을 첨부했습니다. 인간의 신경 조직을 수학적으로 모델링하여 컴퓨터가 인간 처럼 기억·학습·판단할 수 있도록 구현한 것이 인공 신경망 기술이다. 신경 조직의 기본 단위는 뉴런인데, 인공 신경망 에서는 뉴런의 기능을 수학적으로 모델링한 퍼셉트론을 기본 단위로 사용한다. 퍼셉트론은 입력값들을 받아들이는 여러 개의 입력 단자와 이 값을 처리하는 부분, 처리된 값을 내보내는 한 개의 출력 단자로 구성되어 있다. 퍼셉트론은 각각의 입력 단자에 할당된 가중치를 입력값에 곱한 값들을 모두 합하여 가중합을 구한 후, 고정된 임계치보.. 2021. 1. 15.
[딥러닝] 공부 입문기, 행렬 개념 최근 딥 러닝을 공부해볼 좋은 기회가 생겼다. 현재는 파이썬도, 딥러닝도 거의 모르는 상태인데 차근차근 공부해보려고 한다. 이번 딥 러닝 공부의 목표는, 실제로 처음부터 구현은 하지 못하더라도 기존 모델 코드를 읽고 이해하고, 개선점을 찾아볼 수 있을 정도의 실력을 키우는 것으로 잡았다. 특히 이미지 쪽 딥 러닝 기술을 이용해 재미있는 웹 서비스를 만들어 보고 싶은 생각이 있다. 우선 읽어볼 첫 책은 이다. 책을 선택한 특별한 이유가 있는 것은 아니고, 고등학교 후배랑 같이 공부하다가 딥 러닝 할 거라고 했더니 책 있다고 해서 빌려왔다ㅋㅋ 한번 싸악 읽어볼 생각이다. 2009 개정 교육과정부터 고등학교 과정에 행렬이 빠져서 안이하게도 나는 행렬을 공부해본 적이 없는데, 고3때 고급 수학을 수강했던 후배에.. 2021. 1. 14.
[후기] 2021 고카톤 (고려대학교 해커톤) 을 개최했다 회장을 맡고 있던 KUCC의 운영진들 몇몇과, 작년 고카톤 운영진, 그리고 운영을 위해 모인 분들과 함께 고려대학교 해커톤 운영위원회를 꾸려 행사를 개최하게 되었다. 고카톤은 2016년을 시작으로 올해로 5회째를 맞이한 행사로, 1박 2일동안 밤샘 코딩을 하며 주제에 맞는 결과물을 내는 해커톤이다. 코로나19라는 전대미문의 상황에서, 학생 개발자들이 새로운 돌파구를 찾기를 바라는 마음에서 대회 주제는 언택트 시대, 대학생을 위한 서비스 개발로 결정했다. 이전 년도에는 행사가 오프라인으로 진행되었는데, 올해는 처음(이자 마지막이었으면 좋겠다)으로 온라인으로 개최하게 되었다. 온라인 해커톤은 참여도, 개최도 처음인 만큼 고려해야 할 사항들이 많았다. 홍보와 참가 신청 koreahacks.online 에 웹페.. 2021. 1. 13.
[회고] 2020년에 뭐 하고 살았나 나는 2020년에 뭘 했을까? 월별로 정리해봤다. 12월: 정보적 사고 웹 프로그래밍 경진 대회 2019학년도 2학기에 수강했던 '정보적 사고'라는 필수 교양과목 수강생들을 대상으로 웹 프로그래밍 경진 대회가 진행되었는데, 주제는 '나에게 도움이 되는 웹 페이지'였다. 이 때도 리액트를 공부중이긴 했지만 바닐라 html, css, js만으로 프로젝트를 해본 적이 없었기 때문에 프레임워크를 사용하지 않고 만들어 보는 것도 좋은 경험이 될 것 같아 리액트를 사용하지 않았다. Github 페이지로 배포했다. 여기에서 확인할 수 있다. 감사하게도 그룹 으뜸상(1위)를 수상했다. 다른 모듈들을 사용하지도 않았고 jquery도 처음 사용해봐서 지금 보면 많이 미숙하지만, 실력 향상에 많이 도움이 되었고, 성취감도 .. 2020. 12. 29.
[GCP] 구글 클라우드 플랫폼에 Nginx로 리액트 프로젝트 배포하기 도메인을 산지 4달이 됐는데 아직 배포를 안 했다. 그래서 배포를 해보려고 한다. 구글 클라우드 플랫폼에서 새 VM 인스턴스를 만들어준다. 리전 / 영역은 적당히 서울로... HTTP / HTTPS 트래픽을 허용해준다. 눌러서 콘솔 들어간다. sudo apt-get update sudo apt-get upgrade 물어보면 그냥 Y 해준다. 설치 끝. sudo apt-get install nginx sudo systemctl enable nginx sudo systemctl restart nginx sudo systemctl status nginx 잘 설치가 됐다는 뜻인 것 같다. sudo apt install git git clone (깃 링크) 깃을 설치하고, 배포할 프로젝트를 클론해온다. cd ./.. 2020. 11. 29.
[픽셀아트] 1120 버스정류장 픽셀아트를 찍는 데에 최고의 원동력은 매달 나가는 포토샵 구독비다. 그래서 그림이 한 달에 한 장밖에 안 나온다. 10월달에는 미니미 만드느라 그림은 안 그렸다. 아무튼 원래 그리려던 건 문래역 1번출구 앞 버스정류장이었다. (두번째 캡쳐 정류장 뒤에 공원이 보인다.. 문래근린공원이다..) 그리다 보니 뭔가 맘에 안들었는데 돌 열심히 그린게 아깝기도 해서 그냥 뒤에 강? 바다? 를 넣었다. 그 뒤로는 그냥 슥슥삭삭.. 뒷 배경 말고 정류장 쉘터나 펜스같은 건 그냥 문래역 사진 참고했다😉 정류장 광고판에 있는 광고는 그냥 대충 생각나는 거 그렸다. 맞혀보세요~ 2020. 11. 20.
[리뷰] 2020 KUCC 게임잼 후기 - 개발 처음에는 행사 진행만 할 계획이었는데, 팀 랜덤 매칭을 신청한 인원들의 팀원 수를 맞추기 위해 개발에도 참여하게 되었다. 우리 박진용 팀은 수홍선배랑 하민선배, 나 이렇게 셋으로 이루어졌는데, 수홍선배는 원래 밤샘 참여는 안 하기로 했고 나는 진행 때문에 계획이나 사전 준비를 할 수 없는 상황이었다. 그래서 당일날 만나자마자 어떤 게임을 어떻게 만들지 정해야 했다. 기획 | 나는 프론트엔드 개발을 하고, 팀원들이 백엔드 개발을 해서 온라인 웹 게임을 만들기로 했다. 사전 계획이 없었는데도 갖고 있는 기술 스택들이 맞아서 다행히 다들 기여할 수 있게 됐다. 기획한 게임은 온라인 단어 마피아 게임이었다. 처음에는 어몽어스 이야기가 나왔다가, 플레이어들의 움직임을 만들기 어려울 것 같아서 '마피아'라는 큰 틀.. 2020. 11. 9.
[리뷰] 2020 KUCC 게임잼 후기 - 운영 고려대학교 중앙 컴퓨터 동아리 KUCC에서 2020년 11월 6일 저녁부터 7일 아침까지 밤을 새면서 게임을 만드는 2020 KUCC 게임잼을 진행했다. 원래는 2020년 5월에 개최되었어야 할 행사인데, 코로나19때문에 연기되었다. 행사 준비, 진행 방식 등 전반적인 운영 후기를 적어보려고 한다. 회장으로써 처음 개최한 규모의 행사인데, 잘 진행된 것 같아 뿌듯한 생각이 든다. 행사 준비 | 포스터 포스터를 웹 페이지로 구현해서 game-jam-2020.kucc.co.kr/에 배포했다. 배포는 관훈선배가 해줬다! 시상 준비 총 6개의 상을 시상할 예정어서, 상장을 디자인한 후 학교 근처 인쇄소에 두꺼운 종이에 인쇄해달라고 했다. 상장 케이스를 따로 구매하고, 수상 팀명을 즉석에서 적은 후 케이스에 넣어.. 2020. 11. 9.