전체 글

전체 글

    [네트워크] 세션과 쿠키의 차이

    *세션과 쿠키의 차이점은 맨 아래에 💫왜 쿠키와 세션을 사용할까? 👉 기본적으로 HTTP 특성으로 인한 문제를 해결하기 위해서 사용하는데 즉, 클라이언트 인증을 유지하기 위해 사용한다. 쇼핑몰의 예를 들어 보자. 쿠키와 세션을 사용하지 않으면 장바구니에 물품을 담은 경우 새로고침 시 장바구니가 초기화 되어 사용자가 불편을 겪게 된다. 마찬가지로 페이지를 이동할 때마다 로그인을 계속 해야 하는 불편함이 생기게 된다. 이유는 서버가 클라이언트(브라우저)가 누구인지 기억하지 않기 때문인데, 따라서 쿠키와 세션을 사용해 서버가 클라이언트를 기억할 수 있는 것이다. 💫HTTP 프로토콜의 특성 그렇다면 HTTP 프로토콜의 어떤 특징 때문에 쿠키와 세션이 필요한지 알아보자 👇 Connectionless : 클라이언트..

    [백준] 스택 수열 / 1874번 / 파이썬 / python

    🎫code ) from sys import stdin input = stdin.readline n = int(input()) nums = [int(input()) for _ in range(n)] cnt, s, res = 1, [], [] # res 결과값 리스트 for i in nums: while i >= cnt: s.append(cnt) res.append('+') cnt += 1 if s.pop() != i: print('NO') break else: res.append('-') else: print('\n'.join(res)) 📌 description ) 문제출처 : www.acmicpc.net/problem/1874 1874번: 스택 수열 1부터 n까지에 수에 대해 차례로 [push, push..

    [네트워크] 프로토콜의 개념 / 특징 / 요소 / 종류

    💫 프로토콜이란? 👉 서로 다른 시스템 및 기기 간 데이터 교환을 원활히 하기 위한 표준화된 통신규약 기기 간 통신은 교환되는 데이터 형식에 대해 상호 협의를 요구하기 때문에 프로토콜이 필요한 것이며, 공통의 데이터 교환 방법이나 순서에 대해 정의한 약속, 규칙 체계를 의미한다. 따라서 동일한 프로토콜을 사용하면 기종 및 프로그램이 다르더라도 컴퓨터간 상호 통신이 가능하다. 따라서 이기종 간 정보 통신을 하기 위해 표준 프로토콜을 채택하여 통신망을 구축해야 한다. 💫 프로토콜의 기본 요소 👉 기본 요소는 크게 구문, 의미, 타이밍 세 가지가 있다. -> '구의타' 기본요소 설명 구문(Syntax) 송수신 데이터 형식, 코딩, 신호 레벨 등 규정 의미(Semantic) 제어 정보로 조정과 에러 처리를 위한..

    [백준] 듣보잡 / 1764번 / 파이썬 / python

    🎫code ) import sys input = sys.stdin.readline n, m = map(int, input().split(' ')) n_l = set() n_s = set() for _ in range(n): name = input().rstrip() n_l.add(name) for _ in range(m): name = input().rstrip() n_s.add(name) res = sorted(list(n_l & n_s)) print(len(res)) for i in res: print(i) 📌 description ) 문제출처 : www.acmicpc.net/problem/1764 1764번: 듣보잡 첫째 줄에 듣도 못한 사람의 수 N, 보도 못한 사람의 수 M이 주어진다. 이어서 ..

    [백준] 후보 추천하기 / 1713번 / 파이썬 / Python / defaultdict

    💡solutions ) 💬 defaultdict 사용 -> collections 모듈의 defaultdict는 딕셔너리와 거의 비슷하지만 key값이 없을 경우 미리 지정해 놓은 초기(default)값을 반환하는 특징이 있다. -> 그래서 조건문을 통해 get()메소드로 키값이 있는지 확인하지 않아도 되는 편리함이 있다. 💬 반복문에서 추천 리스트의 요소들을 하나씩 뽑아서 사진틀 리스트(photo)에 있는 지 먼저 확인하기 💬 비어있는 사진틀 유무에 따라 분기 처리 -> 비어있는 사진틀이 없다면 photo 리스트에 가장 적은 추천을 받은 번호의 학생을 찾기 -> 해당 번호의 학생 photo 리스트에서 삭제, 동시에 r_dic에서도 삭제하여 추천횟수 초기화(0) 🎫code ) from collections ..

    [백준] 회의실 배정 / 1031번 / 파이썬 / Python / 정렬 / 그리디

    그리디 알고리즘(Greedy Algorithms)이란? 문제를 해결하는 과정에서 그 순간순간마다 최적이라고 생각되는 것을 결정하는 방식으로 진행하여 최종 해답에 도달하는 문제 해결 방식이다. 단, 그리디 알고리즘을 사용하면 매 선택이 그 순간에 대해서는 최적이지만 그걸 종합적으로 봤을 땐 최적이라는 보장은 절대 없다는 것을 명심해야 한다. 💡solutions ) 💬 sorted() 정렬 메소드를 사용했다-> 정렬기준은 종료시간, 시작시간 순으로 정렬 💬 이전 회의의(before) 종료시간을 rooms[0][1]로 잡고, 반복문을 통해 그 다음 회의의 시작시간과 비교하여 시작시간이 이전 회의의 종료시간보다 늦거나 같으면 가능회의 수를 (cnt)+=1 하고 before 값을 갱신해준다. 💬 처음 구현한 코드..

    [백준] 1541 / 잃어버린 괄호 / 파이썬 / Python / 문자열

    이번 문제는 런타임에러가 계속 나서 고생을 좀 했습니다.. 😂 쉬운 문제 같았는데 계속 틀리더라구요! 결론적으로 문제에서 주어진 조건에 따른 반례를 고려하지 못해서 틀렸습니다. 예를 들어 '수는 0으로 시작할 수 있다.' 나 연산자 없이 숫자 하나만 입력받는 경우 등이 있습니다. 문제에서 우리가 알 수 있는 테스트케이스는 55-50+40 밖에 없으므로, 런타임에러가 나는 분들은 반례가 될 수 있는 것들을 찾아서 넣어보시길 추천드립니다! 💡solutions ) 💬 크게 세 부분으로 나눠서 로직 구현 👇 💬 주어진 식에 '-' 연산자 있는 경우 / '-'없이 '+' 연산자만 있는 경우 / 연산자 없이 숫자 하나만 입력받는 경우 💬 '-' 연산자가 있는 경우 : 최초의 마이너스 연산자를 기점으로 f, b으로 ..

    [DB] 정규화 / 반정규화 / 함수적 종속성

    🎇 함수적 종속성(Functional Dependency) 정규화를 수행하기 위해 속성들 간의 관련성을 파악해야 하는데, 속성들 간의 관련성을 함수적 종속성이라고 한다. 일반적으로 하나의 릴레이션에는 하나의 함수적 종속성만이 존재하도록 정규화를 하게 된다. A -> B : A는 결정자 B는 종속자 🔶부분 함수적 종속 속성집합 B가 속성집합A의 전체가 아닌 일부분에도 함수적으로 종속됨을 의미한다. 🔶완전 함수적 종속 속성집합B가 속성집합A 전체에 대해서만 함수적으로 종속된 경우를 의마한다. 일반적으로 함수적 종속성은 완전함수종속을 의미한다. 🎇데이터베이스 정규화 데이터베이스에 삽입이상, 갱신이상, 삭제이상 등 이상현상이 발생하지 않기 위해서는 정규화 과정이 꼭 필요하다 🔶정규화(Normalization) ..