분류 전체보기
![[javascript] 프로그래머스 - 두 개 뽑아서 더하기](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fc5SKS2%2FbtqK2X40f9N%2FgK8fwsIo2vojx34d3i6Lx0%2Fimg.png)
[javascript] 프로그래머스 - 두 개 뽑아서 더하기
🤔문제 해결 1. 2중 포문을 이용하여 서로 다른 2 숫자를 더한 값을 배열에 담는다. 2. 중복을 제거한다 set 3. 정렬한다. 💨 💻소스 코드 function solution(numbers) { var answer = []; for ( var i = 0; i { return a-b }) return result; } 📕문제 확인 출처: 프로그래머스 링크: https://progra..
![TCP/IP (Transmission Control Protocol / Internet Protocol)](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FdrMhrY%2FbtqLzYPOnEi%2F186xLWwfLyGGckTKOgA3M0%2Fimg.png)
TCP/IP (Transmission Control Protocol / Internet Protocol)
📔TCP/IP 란 TCP/IP는 패킷 통신 방식의 인터넷 프로토콜인 IP와 전송 조절 프로토콜인 TCP로 이루어져있습니다. 📔TCP/IP 역할 TCP는 데이터를 작은 단위의 패킷으로 분해하고 조립하며 오류를 잡는 역할을 합니다. IP는 목적지를 찾아 패킷을 최대한 빨리 전송하는 역할을 합니다. TCP는 데이터 전달을 관리 IP는 인터넷상의 주소 규칙 📔TCP/IP 동작 먼저 TCP가 데이터를 작은 조각(패킷 단위)로 나눕니다. 다음 IP는 이 조각들을 최대한 빠르게 목적지로 보냅니다. 조각들의 순서가 뒤바뀌거나 일부가 손실 또는 누락되더라도 신경쓰지 않고 보내는 것에 집중합니다. TCP는 이렇게 도착한 조각을 확인하여 순서를 맞추고 손실 또는 누락된 패킷을 다시 요청합니다. 📔TCP/IP 4계층 OSI ..
![[python] 백준 - 5430. AC](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FzfHWm%2FbtqKWXME0gT%2FmvVUTWNkKcidxdyrxC8Ce0%2Fimg.jpg)
[python] 백준 - 5430. AC
🤔문제 해결 S2 | 자료구조, 데크, 구현 리버스와 제거 두가지 오더가 있다. 리버스를 하게 되면 O(N)의 시간복잡도 발생 그러므로 리버스를 하지말고 이게 뒤집힌 상황인지 아닌지만 구분해준다. 그 후 그대로이면 맨 앞의 숫자를 제거하고 뒤집힌 상황이면 맨 뒤의 숫자를 제거한다. 💻소스 코드 from collections import deque for tc in range(int(input())): # RR이면 원래상태이므로 제거해줌 order = input().replace('RR', '') n = int(input()) number = input()[1:-1] if number: number = deque(list(map(int, number.split(',')))) # R은 뒤집지 말고 my_re..
![대칭키와 비대칭키(Symmetric key and Asymmetric key)](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FeiRHar%2FbtqLyMBxZXZ%2FB1CRRg35tIVNQFV1ydSvjK%2Fimg.png)
대칭키와 비대칭키(Symmetric key and Asymmetric key)
📔키를 사용하는 이유? 키를 사용하여 평문데이터를 암호화하고 상대에게 보냅니다. 외부인이 보더라도 복호화 하지 않으면 볼 수 없어서 안전합니다. 📔대칭키 송신자와 수신자가 같은 키를 가지고 데이터를 암호화와 복호화합니다. 동일한 키로 진행하기 때문에 속도가 빠르다는 장점이 있습니다. 하지만 키의 전달 과정에서 키가 노출될 수 있기 때문에 상대적으로 해킹의 위험에 노출됩니다. 📔비대칭키 송신자는 수신자가 외부에 공개한 공개키를 가지고 데이터를 암호화 하여 수신자에게 보냅니다. 수신자는 자신만이 가지고 있는 개인키로 암호화된 데이터를 복호화합니다. 암호화된 데이터가 노출되더라도 외부인은 복호화 할 수 없기 때문에 안전합니다. 하지만 암호화와 복호화를 하는데 다른 키가 사용되므로 상대적으로 속도가 느립니다. ..
![[python] 백준 - 2004. 조합 0의 개수](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FLzMdP%2FbtqKIqt5RVA%2Fgr2L1QullHSGBDpQsryb7k%2Fimg.jpg)
[python] 백준 - 2004. 조합 0의 개수
🤔문제 해결 S2 | 수학 진짜 팩토리얼로 구해서 문제를 해결하게 되면 시간초과 발생 끝자리가 0이라는 것은 10의 배수 10은 2와 5로 구성되어 있음 2와 5 짝이 맞아야 10이 되므로 2의 개수와 5의 개수중 더 작은게 10의 개수이다. 💻소스 코드 N, M = map(int, input().split()) # 진짜 팩토리얼로 구해서 문제를 해결하게 되면 시간초과 발생 # 끝자리가 0이라는 것은 10의 배수 # 10은 2와 5로 구성되어 있음 # 2와 5 짝이 맞아야 10이 되므로 2의 개수와 5의 개수중 더 작은게 10의 개수이다. def count_number(n, k): count = 0 while n: n //= k count += n return count five_count = count..
![HTTP와 HTTPS](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FkXqZa%2FbtqLuC1iND0%2FwpEpufFDnyZNbCFcx3hDak%2Fimg.png)
HTTP와 HTTPS
📔HTTP 먼저 HTTP란 서로 다른 시스템들 사이에서 통신을 주고받게 해주는 가장 기본적인 프로토콜입니다. 📔HTTPS HTTPS는 HTTP + S 입니다. 여기서 S는 Secure Socket Layer를 말합니다. 이름에서도 확인 할 수 있듯이 보안이 강화된 HTTP입니다. 기존의 HTTP는 암호화되지 않은 데이터를 전송하기 때문에 보안에 취약합니다. 즉 쉽게 데이터를 도난당할 수 있다는 의미 입니다. HTTPS 에서는 SSL을 사용함으로써 이 문제를 해결했습니다. SSL은 서버와 브라우저 사이에 안전하게 암호화된 연결을 만들 수 있게 해주고, 서버와 브라우저가 민감한 정보를 주고 받을 때 이것이 도난 당하는 것을 막아줍니다. 📔HTTPS의 기능 첫번째 기능으로 접속한 사이트가 신뢰하는 사이트인지 ..