전체 446

[프로그래머스][KAKAO_BLIND][2021] 합승 택시 요금

프로그래머스 코딩테스트 고득점 Kit의 문제입니다. https://programmers.co.kr/learn/challenges?tab=algorithm_practice_kit 코딩테스트 연습 기초부터 차근차근, 직접 코드를 작성해 보세요. programmers.co.kr 문제 https://programmers.co.kr/learn/courses/30/lessons/72413 코딩테스트 연습 - 합승 택시 요금 6 4 6 2 [[4, 1, 10], [3, 5, 24], [5, 6, 2], [3, 1, 41], [5, 1, 24], [4, 6, 50], [2, 4, 66], [2, 3, 22], [1, 6, 25]] 82 7 3 4 1 [[5, 7, 9], [4, 6, 4], [3, 6, 1], [3, ..

코딩테스트 2021.08.25

[2장 - 설계] 티스토리 API 정리 / DB 업데이트 기능 정의 / DB 테이블 설계

티스토리 데이터를 DB에 저장하기 위한 정리 첫 관문부터 난제다. 기본적으로 블로그에 올린 글들을 DB에 저장해두고 사용하려고 하는데, 구현하기 전에 정리해야할 사항이 많다. 우선 티스토리 API 사용을 위한 Access token은 만료시간이 확인되지 않아 리터럴로 사용해보기로 했는데... 티스토리 API에서 받은 데이터를 모두 사용할 필요가 없어서, 필요한 데이터들을 추려보았다. 추린 데이터들을 기반으로 DB에 저장하기위한 동작들을 정의하고, 동작을 바탕으로 RDB에 사용할 테이블을 정의해보았다. 서버로 라즈베리파이 4대를 사용하기도 하고, 데이터 형식상 NoSQL이 적합할 수 있는데... RDB 테이블을 만들고 SQL을 사용해보고 싶어서 RDB로 먼저 구성해보았다. 티스토리 API에서 사용할 데이터..

만들기/MAMA COCO 2021.08.25

[백준][오픈테스트] 3초 정렬

BAEKJOON Online Judge(BOJ) 문제입니다. https://www.acmicpc.net/ Baekjoon Online Judge Baekjoon Online Judge 프로그래밍 문제를 풀고 온라인으로 채점받을 수 있는 곳입니다. www.acmicpc.net 문제 https://www.acmicpc.net/problem/22963 22963번: 3초 정렬 원래 수열인 A = [6, 7, 10, 8, 20]의 4번째 원소인 8을 15로 바꾸면 A = [6, 7, 10, 15, 20]이 되어 오름차순으로 정렬된 배열이 된다. 3번째 원소인 10을 8로 바꾸어도 A = [6, 7, 8, 8, 20]이 되어 오름차순으로 정 www.acmicpc.net 내가 작성한 코드 import sys, co..

코딩테스트 2021.08.24

[백준][그래프] 최소 스패닝 트리

BAEKJOON Online Judge(BOJ) 문제입니다. https://www.acmicpc.net/ Baekjoon Online Judge Baekjoon Online Judge 프로그래밍 문제를 풀고 온라인으로 채점받을 수 있는 곳입니다. www.acmicpc.net 문제 https://www.acmicpc.net/problem/1197 1197번: 최소 스패닝 트리 첫째 줄에 정점의 개수 V(1 ≤ V ≤ 10,000)와 간선의 개수 E(1 ≤ E ≤ 100,000)가 주어진다. 다음 E개의 줄에는 각 간선에 대한 정보를 나타내는 세 정수 A, B, C가 주어진다. 이는 A번 정점과 B번 정점이 www.acmicpc.net 내가 작성한 코드 import sys, heapq read = sys.s..

코딩테스트 2021.08.24

[Java의 정석][Chapter-7] 객체지향 프로그래밍 2 (2/2)

이 글은 "Java의 정석 (남궁 성 지음)"을 읽고 주관적으로 요약한 글입니다. 1. 다형성 1) 다형성 다형성 상속과 함께 객체지향개념의 중요한 특징 중 하나 상속과 깊은 관계 정의 여러 가지 형태를 가질 수 있는 능력 한 타입의 참조 변수로 여러 타입의 객체를 참조할 수 있도록 함으로써 다형성을 프로그램적으로 구현 - 조상클래스 타입의 참조변수로 자손 클래스의 인스턴스를 참조할 수 있음 조건 참조변수의 타입에 따라 사용할 수 있는 멤버가 달라짐 참조변수가 사용할 수 있는 멤버는 인스턴스의 멤버 수보다 같거나 적어야 함 - 즉, super 클래스만 sub 클래스를 참조 가능 2) 참조변수와 인스턴스의 타입 불일치 참조변수의 형변환 서로 상속관계에 있는 클래스만 사용 가능 자료형은 작은 타입이 큰 타입..

책읽기 2021.08.23

JAR와 WAR의 차이?

서비스에 맞는 Spring boot 패키징 방식? 프로젝트 도중 Spring boot를 이용한 서버를 만들려고한다. 이 서버는 API 서버로 배포하여 사용되고, 리소스 서버(DB)를 따로 두어 요청에 맞게 사용자에게 응답을 주는 역할을 하려한다. Spring boot에서는 jar와 war 2가지 방식의 패키징을 지원하는데, 어떤 방식을 사용해야할까? JAR (Java ARchive) Java 어플리케이션이 자바 환경 위에서 바로 동작할 수 있도록 자바 프로젝트를 압축한 파일 JRE(Java Runtime Environment)만 있으면 실행 가능 클래스 파일, 라이브러리, 리소스, 설정 파일들(META-INF 등)을 모여서 하나의 어플리케이션/라이브러리로 형성 META-INF - 자바 패키징 기술인 ja..

고민하기 2021.08.22

[1장 - 기획] Remember Me

기억하지 못한 한을 담아 학부시절 나는 공부할 때 필기를 하지 않았다. 수업 내용을 들으면 똘똘하게 이해했고, 공부한 내용은 이 뛰어난 두뇌에 직접 새겨야한다는 오만한 생각을 했나보다. 정말 만약 내가 뛰어난 두뇌를 가졌다고 쳐도, 10년동안 공부한 내용을 모두 기억할 순 없다. 그래서 후회되는 것이 기록하지 않은 것이다. 이제는 공부한 모든 내용을 블로그에 기록하기로 했다. 하지만 블로그에 기록한 내용도 내가 직접 다시 찾아보지 않으면 볼 일이 많지 않다. 아무리 공부한 내용, 기본적인 내용도 다시 공부해야한다는 걸 깨달았기 때문에 더 적극적으로 복습할 필요가 있다. 이제는 공부한 내용을 잊지말자는 의미로 블로그의 내용을 주기적으로 내 핸드폰에 노출시키는 서비스를 만들어야겠다고 생각했다. 그리고 그런 ..

만들기/MAMA COCO 2021.08.22

OAuth란 무엇인가? (인증에 대하여)

티스토리 API 어떻게 써야하지 간단한 프로젝트를 하나 시작하면서 티스토리 API를 사용해야했다. API를 이용해서 내 블로그에 올라온 글을 가져와야하는데, 인증에 대한 기초가 없어서 이용방법이 이해가 되지 않았다. 어찌저찌해서 Access token을 받아 API를 사용할 수 있게 되었지만, 어떤 과정으로 사용이 가능하게 되었는지 확인해보기로 했다. OAuth의 동작에 대해 공부를 시작하고나니 궁금한 내용이 꼬리에 꼬리를 물어 많은 내용이 담기게 되었다. 인증에 대한 기본 지식이 없어, 여러 자료를 토대로 나름의 순서로 재구성해보았다. 1. 기본 인증 동작 1-1) 인증 방식 웹 서비스에서 가장 많이 사용되는 통신 방식은 HTTP 보통 인증 과정에서 HTTP의 헤더에 인증 수단을 넣어 서비스 요청을 보..

고민하기 2021.08.21

[쉽게 배우는 데이터 통신과 컴퓨터 네트워크](요약)[Chapter-5] MAC 계층

이 글은 "쉽게 배우는 데이터 통신과 컴퓨터 네트워크 (박기현 지음)"을 읽고 주관적으로 요약한 글입니다. ※ 요약 MAC 계층 WAN 환경과 달리 LAN 환경에서는 데이터링크 계층의 기능을 나누어 처리 LLC 계층 (Logical Link Control) OSI 7계층 모델에서 정의한 데이터링크 계층의 기본 기능 MAC 계층 (Medium Access Control) 물리적인 전송 선로의 특징과 매체간의 연결 방식에 따른 제어 부분 물리적인 특성을 반영하므로 LAN 종류에 따라 특성이 구분됨 LAN 환경에 따라 종류가 다양하며, 대표적으로 공유 버스 방식의 이더넷과 링 구조 방식의 토큰 링이 대표적 IEEE 802 시리즈 국제 표준화 단체인 IEEE에서 데이터링크 계층과 관련된 다양한 LAN 표준안 연..

책읽기 2021.08.17

[쉽게 배우는 데이터 통신과 컴퓨터 네트워크](요약)[Chapter-4] 데이터 전송의 기초

이 글은 "쉽게 배우는 데이터 통신과 컴퓨터 네트워크 (박기현 지음)"을 읽고 주관적으로 요약한 글입니다. ※ 요약 전송과 교환 전송 - 물리 매체에 의해 일대일로 직접 연결된 두 시스템간의 신뢰성 있는 데이터 전송 - 라우팅이 포함되지 않음 교환 - 전달 경로가 둘 이상일 때 라우터에서 데이터를 전달하는 방향을 선택하는 기능 - 데이터를 올바른 경로로 전달해줌 전송 방식의 종류 네트워크에 연결된 호스트의 지리적 분포에 따른 구분 방식 LAN MAN WAN 데이터 전송/교환 기술에 따른 네트워크 분류 방식 점대점 방식 - 송신 호스트가 중개 호스트와 일대일로 연결되어 다른 호스트에는 데이터가 전달되지 않는 구성 - 최종 목적지 호스트까지 인접 호스트에 전송하는 과정이 단계적으로 반복됨 - 성능면에서 유리..

책읽기 2021.08.17