일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- CORS
- Cross-origin Resource Sharing
- 개념 정리
- 명령어
- heap
- array
- CentOS
- datastructure
- network
- OSI 7 layer
- 이분 탐색
- 힙
- 모음
- 우선순위 큐
- queue
- cron expression
- cron표현식
- 파이썬
- docker
- 좌표 압축
- 백준
- 자료구조
- 스케쥴링
- powershell
- python
- 내부망
- 18870
- cron
- Docker Compose
- priority queue
- Today
- Total
목록분류 전체보기 (12)
고양이와 코딩하기
프론트엔드 개발 당시 개발자 도구 콘솔창으로 CORS관련 빨간 메시지가 뜬 적이 정말 많았다.당시에는 그때그때 마다 구글링을 통해 주먹구구식으로 해결했었고, 그런 과정이 반복되면서 자연스럽게 CORS가 무엇인지 어렴풋이 알게되었다.요즘 시큐리티 공부 관련으로 CORS를 다시 보게되면서 이번 기회에 자세히 정리해보려고 한다.목차CORS란?CORS 접근 시나리오Simple RequestPreflight Request + Requests with credentials주의사항자격증명이 포함된 요청에서의 와일드카드 제한서드 파티 쿠키 1. CORS란?브라우저는 보안상 기본적으로 SOP(Same Origin Policy, 동일 출처 정책)가 적용된다. 즉, 브라우저에서 A라는 사이트를 통해 B 서버에 요청을 보내면..
문제 https://www.acmicpc.net/problem/1202 1202번: 보석 도둑 첫째 줄에 N과 K가 주어진다. (1 ≤ N, K ≤ 300,000) 다음 N개 줄에는 각 보석의 정보 Mi와 Vi가 주어진다. (0 ≤ Mi, Vi ≤ 1,000,000) 다음 K개 줄에는 가방에 담을 수 있는 최대 무게 Ci가 주어진다. (1 ≤ Ci www.acmicpc.net 핵심 로직 허용량이 가장 작은 가방부터 차례대로 보석 무게들을 비교하여, 담을 수 있는 보석후보를 보석 가격을 우선순위로 최대힙에 넣고, 각 가방에 담을 수 있는 가장 높은 보석 가격들의 합을 구한다. 사전작업: 보석(무게, 가격)리스트, 가방(허용량)리스트 오름차순 정렬 힌트: 오름차순으로 정렬되어 있는 리스트의 경우, 바로 he..
문제 https://www.acmicpc.net/problem/7662 7662번: 이중 우선순위 큐 입력 데이터는 표준입력을 사용한다. 입력은 T개의 테스트 데이터로 구성된다. 입력의 첫 번째 줄에는 입력 데이터의 수를 나타내는 정수 T가 주어진다. 각 테스트 데이터의 첫째 줄에는 Q에 적 www.acmicpc.net 핵심 로직 1. 최대힙, 최소힙 동시 사용 insert: 값을 넣을 때 최대힙, 최소힙에 해당값을 각각 넣어준다. delete: 최대힙 혹은 최소힙에서 값을 제거할 때, 해당 값이 제거되었음을 기록해준다. → 다른 쪽 힙에서 값을 제거해줄 때 이미 제거된 값인지 확인하여, 이미 제거된 값인 경우 제거되지 않는 값이 나올 때까지 헤더 값을 계속해서 제거해 나간다. Hint: 최대힙과 최소힙..
문제 https://www.acmicpc.net/problem/18870 핵심 로직 1. 이분 탐색, 집합 중복제거 후 이분 탐색 사전 작업: index값을 리턴하는 이분 탐색 함수 구현 - binary_search() 1. set()을 이용하여 리스트 X 안의 중복값 제거한 집합 생성 2. 집합을 다시 리스트로 만들고 오름차순으로 정렬하여 리스트 sorted_X를 생성 3. for문으로 리스트 X의 값들을 순회하여 binary_search()로 sorted_X에서의 index값을 구함 4. index값은 0부터 시작이므로, 이는 곧 자기보다 작은 수의 갯수와 값이 같음 정답 코드 - [시간복잡도: O(N*logN)] 더보기 import sys def binary_search(array, value): ..
목차 우선순위 큐, 그리고 힙 시간복잡도 핵심 로직 insert() pop() 활용 (Python) PriorityQueue vs heapq 대표유형 풀이: [11279] 최대 힙 추천 문제 1. 우선순위 큐, 그리고 힙 Priority Queue: pop() 할 때 가장 먼저 들어온 원소가 나오는 대신 우선순위가 가장 높은 원소가 나오는 큐 Heap: 데이터에서 최솟값 혹은 최댓값을 빠르게 찾기위해 고안된, 완전이진트리(Complete Binary Tree)를 기본으로 한 자료구조 Complete Binary Tree 더보기 노드를 채워갈 때, 최하단 왼쪽부터 차례대로 채워 나가는 이진트리 2. 시간복잡도 Priority Queue를 구현하는 방법은 여러가지 있겠으나, 시간복잡도를 고려하여 가장 효율적..
Corn 표현식 1. 가장 앞에 오는 단위는 초(Seconds)이다. 2. 두번째는 분(Minutes)을 나타낸다. 3. 세번째는 시(Hours)를 나타낸다. 4. 네번째는 일(Day-of-Month, DOM)을 나타낸다. 5. 다섯번째로 월(Month)에 대한 정보를 기술한다. 6. 여섯번째는 요일(Day of Week)을 나타낸다. 요일은 0~6의 숫자로 쓸 수도 있지만 "MON", "SUN"과 같이 요일의 약자로 사용할 수도 있다. 7. 마지막으로 일곱번째에는 연도(Year)가 온다. 연도는 optional이다. - 와일드카드(*) 문자는 '매 번'을 의미한다. - 물음표(?) 는 '설정값 없음'을 나타낸다. 이는 일(DOM)과 요일(DOW)에만 사용할 수 있다. - 슬래쉬(/) 는 값 증가 표현에..
ssh ip접속 기록 삭제? ssh-keygen -R $SERVER_IP 계정 추가 useradd $USER_NAME passwd $USER_NAME 계정 수정 usermod -d $HOME_PATH -m $USER_NAME: 홈디렉토리 수정 -l $NEW_USER_NAME $OLD_USER_NAME: 계정명 수정 -u/-g $ID $USER_NAME: uid, gid 수정 -G wheel $USER_NAME: wheel 그룹에 계정 추가
네트워크 통신에 문제가 발생할 때, 우리는 터미널을 통해 문제의 발생 지점 또는 발생 원인을 알아보고 싶을 것이다. 이때 단순히 ping테스트만으로는 원인을 알 수 없기 때문에, 상황에 따라 다양한 명령어들을 미리 알아둘 필요가 있다. 이 글을 통해 네트워크 상태 확인을 위해 많이 사용하는 명령어들과 관련 네트워크 개념을 정리해봤다. 네트워크 문제로 고생하는 개발자들에게 많은 참고가 되길 바란다! 목차 ipconfig/ifconfig ping netstat curl telnet traceroute ipconfig/ifconfig 네트워크 인터페이스 정보 확인 명령어 ipconfig: window ifconfig: linux *ip 주소는 호스트에 하나씩 부여되는 것이 아니라 네트워크 인터페이스에 할당된다..