코딩한걸음
[BAEKJOON] 1167 트리의 지름
Coding Test/BAEKJOON 2023. 11. 21. 19:10

https://www.acmicpc.net/problem/1167 1167번: 트리의 지름 트리가 입력으로 주어진다. 먼저 첫 번째 줄에서는 트리의 정점의 개수 V가 주어지고 (2 ≤ V ≤ 100,000)둘째 줄부터 V개의 줄에 걸쳐 간선의 정보가 다음과 같이 주어진다. 정점 번호는 1부터 V까지 www.acmicpc.net 문제 트리의 지름이란, 트리에서 임의의 두 점 사이의 거리 중 가장 긴 것을 말한다. 트리의 지름을 구하는 프로그램을 작성하시오. 입력 트리가 입력으로 주어진다. 먼저 첫 번째 줄에서는 트리의 정점의 개수 V가 주어지고(2 ≤ V ≤ 100,000) 둘째 줄부터 V개의 줄에 걸쳐 간선의 정보가 다음과 같이 주어진다. 정점 번호는 1부터 V까지 매겨져 있다. 먼저 정점 번호가 주어지..

article thumbnail
[Django 50문 50답] RESTful API는 무엇을 의미합니까?
Python/Django 2023. 11. 4. 08:00

Q. RESTful API는 무엇을 의미합니까? REST는 REpresentational State Transfer의 약자로, 웹 기반의 시스템에서 컴포넌트 사이의 데이터 전송을 위한 아키텍처 스타일입니다. 이 아키텍처는 자원(resource)의 표현(representation)을 통해 상태 정보를 주고 받는 것을 기본으로 합니다. 자원은 URI로 식별되며, 그 상태는 JSON, XML 등의 형태로 전달됩니다. REST의 특징은 Server-Client, Stateless, Cacheable, Layered System,Uniform Interface, Self-Descriptiveness입니다. REST API는 이러한 원칙을 따르는 API를 구현한 것이며, RESTful API는 REST 원칙들을 최..

article thumbnail
[Django 50문 50답] JWT의 Access Token과 Refresh Token은 왜 필요한가요?
Python/Django 2023. 11. 3. 18:25

Q. JWT의 Access Token과 Refresh Token은 왜 필요한가요? Access Token은 사용자가 인증을 마친 후 서비스 내의 리소스에 접근할 수 있는 권한을 부여하기 위해 사용됩니다. 이 토큰은 짧은 유효 시간을 가지고 있으며, 이는 만약 토큰이 탈취되더라도 제한된 시간 동안만 유효하다는 의미 입니다. 따라서 보안 리스크를 최소화할 수 있습니다. Refresh Token은 유효기간이 만료된 Access Token을 새로 발급받기 위해 사용됩니다. Refresh Token은 상대적으로 긴 수명을 가지고 있고 Access Token보다 더 안전하게 저장되어야 합니다. 사용자가 매번 로그인하여 새로운 Access Token을 받는 번거로움 없이, 안전하게 서비스를 이용할 수 있도록 합니다...

article thumbnail
[Django 50문 50답] JWT에 대해서 설명하시오
Python/Django 2023. 11. 3. 14:20

Q. JWT에 대해서 설명하시오 JWT는 JSON Web Token의 약자로 JSON을 이용해 정보를 안전하게 다루기 위한 개방형 표준입니다. JWT는 크게 헤더(Header), 내용(Payload), 서명(Signature)으로 나뉘어지며 `.`으로 각 부분을 구분합니다. 각 부분은 전부 Base64 URL-safe Encode로 인코딩되어 사용됩니다. JWT는 자체적으로 필요한 정보를 담고 있어서, 인증 정보를 매 요청마다 서버에 저장할 필요가 없어서 상태를 유지하지 않는(stateless) RESTful API에 적합합니다. 또한, 여러 다른 플랫폼과 도메인 간에도 사용할 수 있어 확장성이 높습니다. 하지만 보안 측면에서는 몇 가지 주의할 점이 있습니다. 암호화되지 않은 JWT는 Payload의 내..

article thumbnail
서울나들이
일상 2023. 10. 29. 19:00

Intro. 컬처핏 면접을 보러 서울로 간 김에 가고싶었던 곳들을 둘러보았다. 친구집에서 자고 토욜까지 일정으로 1박 2일동안의 서울 나들이. 루트는 강남 - 성수 - 건대입구 - 신설동(친구집) - 마장 축산 시장 - 서울숲 - 한강 - 강남으로 돌았다. 진짜 1박 2일로 알차게 둘러보고 왔다 ㅋㅋ.. 항상 볼일만 보고 바로 돌아왔었는데 요즘 계속 화면만 보면서 두통이 조금 있었는데 좋은 경험이였다. Seoul Tour Outro. 2일동안 5만보정도 걸었다. 진짜 너무 피곤해.. 캠퍼스신고 5만보라니. 그래도 서울 진짜 많이 둘러보고 사진도 찍고 친구들도 만나고 리프레쉬가 많이 됐다. 솔직히 이번주 내내 두통때문에 힘들었는데 두통이 사라졌다. 아무래도 스트레스성이였던 듯. 다음주부터 다시 화이팅 해야지.

[Django 50문 50답] Django Template Engine은 무엇이고 어떤 기능을 제공합니까?
Python/Django 2023. 10. 27. 12:00

Q. Django Template Engine은 무엇이고 어떤 기능을 제공합니까? (이하 DTE) DTE은 Django 프레임워크 내에 내장된 웹 템플릿 시스템입니다. 이것을 통해 Python 객체와 값을 HTML과 같은 텍스트 기반 형식에 동적으로 렌더링 할 수 있습니다. 주요 기능은 " 변수 치환 : 템플릿 내에서 `{{ value }}` 형태로 변수 값을 렌더링 태그 시스템 : `{% tag %}` 형태로 제공되며, 반복, 조건문, 템플릿 상속 등의 로직을 처리 필터 : `{{ value|lower }}` 형태로 변수에 특정 변환을 적용하기 위해 사용 자동 HTML 이스케이프 : 보안을 위해, 기본적으로 모든 변수가 HTML로 이스케이프. 이를 통해 XSS 공격을 방지 " 입니다. 질문 의도 MVT..

[Django 50문 50답] Django Admin은 무엇이고 어떤 기능을 제공합니까?
Python/Django 2023. 10. 27. 08:00

Q. Django Admin은 무엇이고 어떤 기능을 제공합니까? Django Admin은 Django 프레임워크에 포함된 관리자 인터페이스입니다. 이를 통해 개발자는 웹 어플리케이션의 데이터를 쉽게 관리하고 조작할 수 있습니다. 주요 기능은 " 모델 기반의 인터페이스 생성 : 등록된 모델에 기반하여 자동으로 CRUD 인터페이스 생성 사용자 인증 : 사용자 관리 및 권한 관리 기능을 내장하여, 특정 사용자나 그룹에 대한 접근 제한 설정 검색 및 필터링 : 생성된 인터페이스에서 데이터 검색 및 필터링 기능을 지원 커스터마이징 : 기본 제공되는 인터페이스나 동작 외에도, 개발자의 요구에 맞게 인터페이스를 커스터마이즈 가능 다양한 필드 지원 : 이미지 업로드, 날짜 선택 등 다양한 필드 타입을 지원하여 복잡한 ..

[BAEKJOON] 1753 최단경로
Coding Test/BAEKJOON 2023. 10. 27. 08:00

https://www.acmicpc.net/problem/1753 1753번: 최단경로 첫째 줄에 정점의 개수 V와 간선의 개수 E가 주어진다. (1 ≤ V ≤ 20,000, 1 ≤ E ≤ 300,000) 모든 정점에는 1부터 V까지 번호가 매겨져 있다고 가정한다. 둘째 줄에는 시작 정점의 번호 K(1 ≤ K ≤ V)가 www.acmicpc.net 문제 방향그래프가 주어지면 주어진 시작점에서 다른 모든 정점으로의 최단 경로를 구하는 프로그램을 작성하시오. 단, 모든 간선의 가중치는 10 이하의 자연수이다. 입력 첫째 줄에 정점의 개수 V와 간선의 개수 E가 주어진다. (1 ≤ V ≤ 20,000, 1 ≤ E ≤ 300,000) 모든 정점에는 1부터 V까지 번호가 매겨져 있다고 가정한다. 둘째 줄에는 시작..