목록분류 전체보기 (299)
내 잡다한 노트
데이터 크기 : XML > JSON > CSV # XML (eXtensible Markup Language) 장점 : XML은 3가지 포맷중 가장 직관적. 단점 : 실제 전송하는 정보보다 메타 데이터의 크기가 더 커질 수 있음 주요 사용처 : 단순 게임 옵션, 직접 데이터 수정이 잦은 부분에 사용 HTML과 유사한 구조를 가지고 있다. 다목적 마크업 언어로 태그 등을 이용하여 데이터의 구조를 기술하는 언어이다. HTML의 태그와 같이 꺽쇠()를 사용하고 트리 계층 구조를 사용한다. # JSON (JavaScript Object Notation) 장점 : 모양과 규칙 자체가 단순해서 타언어에서도 구현하기가 쉬움 단점 : 콤마가 누락되거나 중괄호가 잘못 닫히는 등 문법 오류에 취약하다. 주요 사용처 : 서버..
1. 문자열에 있는 특정 문자 갯수 세기 -> count 함수 data = Dave.David data.count('Dave') -> 1 2. 문자열에 있는 특정 문자의 위치 알려주기 -> index 함수 string = 'Dave ID is dave' string.index('D') -> 0 제일 첫번째와 같은 것을 찾아 인덱스 번호를 리턴한다 이 index 함수는 문자열에서 같은 것을 찾지 못한다면 오류를 발생시킨다. 해당 문자가 문자열에 없을 때, 에러를 안낼 수는 없을까? 그럴 댄 find 함수를 사용하자. 해당 문자가 문자열에 없으면 -1을 리턴한다. 3. 문자열 사이에 다른 문자 넣기 -> join 함수 string = '12345' comma = 'ㅌㅌㅌㅌ' comma.join(string)..
# find 함수를 사용 import requests from bs4 import BeautifulSoup res = requests.get('크롤링할 사이트 url') soup = BeautifulSoup(res.content, 'html.parser') section = soup.find('ul', id='dev_course_list') titles = section.find_all('li', 'course') for index, title in enumerate(titles): print(index+1, title.get_text().split('[')[0].split('-')[1].strip()) 예시 코드. requests 모듈은 사이트의 정보를 가져오는 것 find()의 인자로 html 태그들..
Representational State Transfer (REST) 자원을 이름으로 구분하여 해당 자원의 상태를 주고받는 모든 것을 의미한다. 즉 REST란 1. HTTP URI(Uniform Resource Identifier)를 통해 자원을 명시하고 2. HTTP Method를 통해 3. 해당 자원에 대한 CRUD Operation을 적용하는 것을 의미합니다. REST는 기본적으로 웹의 기존 기술과 HTTP 프로토콜을 그대로 활용하기 때문에 웹의 장점을 최대한 활용할 수 있는 아키텍처 스타일이다. 구체적으로 HTTP URI를 통해 자원을 명시하고, HTTP Method를 통해 해당 자원에 대한 CRUD Operation을 적용하는 것을 의미한다. REST API란 REST를 기반으로 만들어진 API..
# 문제 https://www.acmicpc.net/problem/15683 # 소스코드 from collections import deque n, m = map(int, input().split()) cctv = [] wall = [] arr = [] ans = n * m dx = [0, 0, 1, -1] dy = [1, -1, 0, 0] left = [-1, 0] right = [1, 0] up = [0, -1] down = [0, 1] two = [[left, right], [up, down]] three = [[up, right], [right, down], [down, left], [left, up]] four = [[left, up, right], [up, right, down], [right..
문제) https://www.acmicpc.net/problem/15897 15897번: 잘못 구현한 에라토스테네스의 체 성원이는 오늘 이산수학 수업 시간에 에라토스테네스의 체에 대해 배웠다. 에라토스테네스의 체는 고대 그리스 수학자 에라토스테네스가 발견한 소수를 찾는 방법이다. 성원이는 이 방법에 너 www.acmicpc.net 소스코드) n = int(input()) arr = [] ans = n j = 0 i = 2 while n > i: j = (n - 1) // ((n - 1) // i) num = 1 + (n - 1) // i ans += (j - i + 1) * num #print(i, j, num, ans) i = j+1 if n != 1: ans += 1 print(ans) 왤캐 어렵지...
# 문제 https://www.acmicpc.net/problem/1612 1612번: 가지고 노는 1 동물원에서 막 탈출한 원숭이 한 마리가 세상구경을 하고 있다. 이 원숭이는 수를 이리저리 가지고 노는 것을 매우 좋아한다. 그중에서도 1을 가지고 노는 것을 매우매우매우매우매우 좋아한다. www.acmicpc.net # 소스코드 n = int(input()) temp = 1 ans = 1 if n % 2 == 0 or n % 5 == 0: print(-1) exit() while temp % n != 0: temp = (temp % n) * 10 + 1 ans += 1 print(ans) temp = (temp % n) * 10 + 1이 왤캐 와닿지가 않을까...ㅋㅋㅋ 그냥 1, 11, 111, 111..
우선순위 큐를 위해 만들어진 자료구조이다. 먼저, 우선순위 큐에 대해 짧게 알아보면... # 우선순위 큐 우선순위의 개념을 큐에 도입한 자료구조이다. 데이터들이 우선순위를 가지고 있고 우선순위가 높은 데이터가 먼저 나간다. # 우선순위 큐 이용사례 시뮬레이션 시스템 네트워크 트래픽 제어 운영 체제에서의 작업 스케쥴링 수치 해석적인 계산 우선순위 큐는 배열, 연결리스트, 힙으로 구현이 가능하다. 이 중에서 힙으로 구현이 가능하는게 가장 효율적이라고 한다. 힙으로 구현할 시 삽입과 삭제의 시간복잡도는 각각 O(logn)이 된다고 한다. # 힙 heap 완전 이진 트리(Complete tree)의 일종으로 우선순위 큐를 위해 만들어진 자료구조이다. 완전이진트리는 왼쪽부터 아래쪽으로 삽입해 나간다. 또한 리프노..