[Network] DNS
·
🔻Computer Science/Network
❗DNS란?인터넷에서 도메인 이름(예: www.example.com)을 IP 주소(예: 192.0.2.1)로 변환하는 시스템이다. 사람이 기억하기 쉬운 도메인 이름을 사용해 웹사이트나 네트워크 자원에 접근할 수 있게 하며 IP 주소로 서버에 연결을 가능하게 하여 인터넷의 전화번호부 역할 한다. 인터넷이 정상적으로 작동하려면 신뢰할 수 있고 빠른 DNS 서비스가 필수적이다. ❗DNS의 역할과 동작 원리DNS는 계층 구조로 이루어져 있으며 단계별로 정보가 저장되고 검색된다. DNS 요청과 캐시 확인사용자가 웹 브라우저에 도메인 이름을 입력하면 먼저 브라우저와 운영 체제에서 해당 도메인 이름의 IP 주소가 캐시(임시 저장소)에 있는지 확인함캐시에 존재하지 않으면 DNS 서버에 요청을 보냄DNS 서버 계층 구조..
[2024] 2024년 4분기 회고
·
🔻회고
✨ #10월- 10월은 자소서와 필기 전형, 코테의 달이었던 것 같다. 서합이 될 거라고 생각도 안 했던 곳이 있어서 인적성도 따로 준비 안 했었는데 부랴부랴 준비하긴 했지만 필탈이었다ㅠㅠ 어느 정도까지 서합할 수 있을지 감도 안 잡혀서 준비를 제대로 못 했던 내 탓이다..ㅎㅎ 개발자는 코테만 하면 되는 줄ㅠ- 매주 주말마다 코테나 필기 시험이 있어서 주중이 주말같고 주말이 주중같았다! - 그래도 틈틈이 나가서 놀기도 하며 한 달을 살아갔던 것 같다ㅎㅎ  #11월- 11월엔 첫 면접이 있었다! 원데이 면접이라 그냥 즐겁게 즐기다가 와야겠다.. 라는 생각이 더 컸다. 그래서 뭐 하루종일 조원들이랑 즐거웠다!- 그리고 이 면접에 합격해서 갑자기 인턴이 되었다ㅋㅎㅋㅎㅋ 연수원도 무우우려 3주... - 첫 연수..
[Codetree] 예술성 Python
·
🔻PS/Codetree
https://www.codetree.ai/training-field/frequent-problems/problems/artistry/description?page=5&pageSize=5 코드트리 | 코딩테스트 준비를 위한 알고리즘 정석국가대표가 만든 코딩 공부의 가이드북 코딩 왕초보부터 꿈의 직장 코테 합격까지, 국가대표가 엄선한 커리큘럼으로 준비해보세요.www.codetree.ai from collections import defaultdictn = int(input())graph = []visited = [[0 for _ in range(n)] for _ in range(n)]dx = [0, 0, 1, -1]dy = [1, -1, 0, 0]for _ in range(n): temp = list..
[Baekjoon] 백준 22233 가희와 키워드 Python
·
🔻PS/Baekjoon
https://www.acmicpc.net/problem/22233 ❗풀이방법문자열을 처리하는 문제이기 때문에 rstrip을 꼭 써주어야 함 (이거 때문에 통과를 못 했었다,,)set의 이용하여 중복을 제거하고 차집합을 사용 ❗코드import sysinput = sys.stdin.readlineN, M = map(int, input().split(" "))keywords = set()for _ in range(N): temp = input().rstrip() keywords.add(temp)for _ in range(M): memos = set(input().rstrip().split(",")) keywords -= memos print(len(keywords))
[Baekjoon] 백준 1253 좋다 Python
·
🔻PS/Baekjoon
https://www.acmicpc.net/problem/1253 cnt = 0N = int(input())num = list(map(int, input().split(" ")))num.sort()cnt = 0for i in range(N): target = num[i] left = 0 right = N-1 while left
[Database] Sharding
·
🔻Computer Science/Database
❗Sharding(샤딩)이란?대규모 데이터베이스를 처리할 때 성능과 확장성을 확보하기 위해 데이터를 분할하는 기법이다. 데이터 분할 목적: 단일 데이터베이스 서버가 처리할 수 있는 용량이나 트래픽에 한계가 있을 때 이를 극복하기 위해 데이터를 여러 개의 작은 데이터베이스로 나누어 분산 처리수평적 분할(Sharding): 데이터를 수평으로 나누어 각각의 분할된 데이터베이스(샤드, shard)가 독립적으로 작동하며 적은 양의 데이터를 처리하게 함으로써 성능을 향상시키고 확장성을 높임예시: 고객 정보 100만 건을 4개의 샤드로 나누면 각 샤드는 약 25만 건의 데이터를 저장하고 처리  ❗ Sharding의 장점확장성(Scalability)데이터를 여러 서버에 분산하여 저장하고 처리할 수 있어서 서버 성능에 ..
[Baekjoon] 백준 1976 여행가자 Python
·
🔻PS/Baekjoon
https://www.acmicpc.net/problem/1976 from collections import defaultdict, dequeN = int(input())M = int(input())temp = []for _ in range(N): t = list(map(int, input().split(" "))) temp.append(t)plan = list(map(int, input().split(" ")))graph = defaultdict(set)for i in range(N): for j in range(N): if temp[i][j] == 1: graph[i+1].add(j+1) graph[j+1].add(i+1)def bf..
[OS] Memory
·
🔻Computer Science/Operating System
❗메모리의 종류휘발성 메모리비휘발성 메모리전원이 꺼지면 저장된 데이터가 사라지는 메모리RAM (Random Access Memory)DRAM (Dynamic RAM): 지속적으로 데이터를 새로 고쳐야(refresh) 하는 메모리로 대부분의 시스템에서 주 메모리로 사용됨SRAM (Static RAM): DRAM보다 빠르고 새로 고침이 필요 없지만 더 비싸고 용량이 적음 전원이 꺼져도 데이터가 유지되는 메모리ROM (Read-Only Memory), SSD (Solid State Drive), HDD (Hard Disk Drive), 플래시 메모리 등ROM: 부팅 시 필요한 시스템 펌웨어나 하드웨어의 기본 정보를 저장하는 메모리NAND 플래시 메모리: 주로 스마트폰, SSD, USB 드라이브 등에 사용되며 ..
[Baekjoon] 백준 14503 로봇 청소기 Python
·
🔻PS/Baekjoon
https://www.acmicpc.net/problem/14503 ❗풀이 방법현재 위치 청소현재 좌표 기준 4방향 확인반시계 방향이므로 왼쪽 회전다음 위치가 청소가 안 되어 있다면 clean함수 실행바로 return -> 다른 방향도 순차적으로 확인할 것이 아니라 다음 좌표가 정해지면 다시 그 좌표를 기준으로 청소하는 것이기 때문4방향에 전부 청소가 다 되어 있다면 후진현재 좌표 이동거리만큼 빼기후진 좌표로 이동할 수 있다면 다시 clean함수 실행없다면 return 으로 이동 멈춤 ❗코드import sysinput = sys.stdin.readlinen, m = map(int, input().split(" "))graph = []start_x, start_y, d = map(int, input().s..
[Baekjoon] 백준 2961 도영이가 만든 맛있는 음식 Python
·
🔻PS/Baekjoon
https://www.acmicpc.net/problem/2961 import sysinput = sys.stdin.readlinesys.setrecursionlimit(10**6)n = int(input())foods = []visited = [0 for _ in range(n)]for _ in range(n): s, b = map(int, input().split(" ")) foods.append([s, b])answer = []min_val = 1000000000def mul(arr): result = 1 for a in arr: result *= a return resultdef backtrack(dep, max_dep, pre): global min_..
_니지
컴공생의 끄적끄적