채야미의 코드레시피🍳

분류 전체보기

코딩테스트 연습/백준
문제 https://www.acmicpc.net/problem/2580 2580번: 스도쿠 스도쿠는 18세기 스위스 수학자가 만든 '라틴 사각형'이랑 퍼즐에서 유래한 것으로 현재 많은 인기를 누리고 있다. 이 게임은 아래 그림과 같이 가로, 세로 각각 9개씩 총 81개의 작은 칸으로 이루 www.acmicpc.net 더보기 문제 스도쿠는 18세기 스위스 수학자가 만든 '라틴 사각형'이랑 퍼즐에서 유래한 것으로 현재 많은 인기를 누리고 있다. 이 게임은 아래 그림과 같이 가로, 세로 각각 9개씩 총 81개의 작은 칸으로 이루어진 정사각형 판 위에서 이뤄지는데, 게임 시작 전 일부 칸에는 1부터 9까지의 숫자 중 하나가 쓰여 있다. 나머지 빈 칸을 채우는 방식은 다음과 같다. 각각의 가로줄과 세로줄에는 1부..
STUDY/네트워크
네트워크 프로토콜은 크게 데이터 프로토콜과 컨트롤 프로토콜로 크게 나눌 수 있다. 데이터 프로토콜 실제 데이터의 전송을 담당 컨트롤 프로토콜 데이터 프로토콜을 지원하며 통신 관계를 설정하고 유지하는 역할 TCP/IP 프로토콜 체계에서 주요 컨트롤 프로토콜로는 ARP, ICMP, DNS가 있다. DNS(Domain Name System)는 도메인 주소를 IP 주소로 변환하는 중요한 역할을 한다. 사용자에게 친숙한 도메인 주소를 이용하고, 서버 IP가 변경되어도 쉽게 대응할 수 있도록 도와주는 것 최근에는 클라우드 기반 인프라와 MSA(Micro Service Architecture) 기반의 서비스가 많아짐에 따라, DNS의 역할이 더욱 중요해지고 있다. 클라우드 환경에서는 인프라가 자주 변경되므로 DNS ..
코딩테스트 연습/백준
문제 https://www.acmicpc.net/problem/9663 9663번: N-Queen N-Queen 문제는 크기가 N × N인 체스판 위에 퀸 N개를 서로 공격할 수 없게 놓는 문제이다. N이 주어졌을 때, 퀸을 놓는 방법의 수를 구하는 프로그램을 작성하시오. www.acmicpc.net 더보기 문제 N-Queen 문제는 크기가 N × N인 체스판 위에 퀸 N개를 서로 공격할 수 없게 놓는 문제이다. N이 주어졌을 때, 퀸을 놓는 방법의 수를 구하는 프로그램을 작성하시오. 입력 첫째 줄에 N이 주어진다. (1 ≤ N < 15) 출력 첫째 줄에 퀸 N개를 서로 공격할 수 없게 놓는 경우의 수를 출력한다. 예제 입력 1 8 예제 출력 1 92 풀이 접근 내가 퀸을 놓은 위치를 기준으로 다음 퀸을..
STUDY/네트워크
지금까지 네트워크 장비가 패킷을 처리하는 방법에 대해 배웠다.종단 장비에서 패킷이 시작되어 중간 네트워크 장비에서 이 패킷을 처리하는 과정 외에도 IP 네트워크에는 통신을 도와주고 사용자를 편리하게 해주는 다양한 서비스와 프로토콜이 있다.더보기NAT(Network Address Translation) 하나의 IP를 사용해 여러 단말 장비를 포함하는 네트워크를 구축할 수 있게 해주는 기술사설 IP 주소를 공인 IP 주소로 변환하여 인터넷에 접속할 수 있도록 도와준다.DNS(Domain Name System) 사용자가 복잡한 목적지 IP를 기억하지 않고도 도메인 이름을 사용할 수 있게 해주는 시스템도메인 이름과 IP 주소를 매핑하여 사용자가 편리하게 네트워크에 접속할 수 있도록 도와줌GSLB(Global S..
Dev/Tools
General - 일반적인 단축키 Window Mac 설명 Alt + #[0-9] ⌘0...⌘9 각 단축키에 해당하는 도구창 열기 Ctrl + S ⌘S 모두 저장 Ctrl + Alt + Y ⌘⌥Y IntelliJ가 파일 시스템에서 최신 변경 사항을 처리하도록 강제 일반적으로 변경 내용은 자동으로 처리되므로 작업은 아무 작업도 수행하지 않음 Ctrl + Shift + F12 ⌘⇧F12 편집기(Editor) 영역을 최대로 크기로 토글 Alt + Shift + I ⌥⇧I 현재 프로필 기준으로 현재 파일 검사 Ctrl + ` ⌃` 인텔리제이 테마 변경 Ctrl + Alt + S ⌘ , 설정창(Settings) 열기 Ctrl + Alt + Shift + S ⌘ ; 프로젝트 구조창(프로젝트 구조 확인 및 변경) 열..
TIP/Tistory
이전에 글쓰기 버튼을 추가하고 나니 이번엔 로그인, 로그아웃 버튼이 만들고 싶어졌다. 이 역시 기본 스킨에는 토글로 있었던 것 같은데, 스킨 유목민 시절부터 정착한 지금까지 여러 스킨에서 바로가기 토글이 없는 경우가 많았더라서 그냥 많이들 안 쓰나보다.. 하고 말았었다. 하지만 매번 들어올 때 마다 로그인이 풀려있어서, Q 눌러서 관리자 페이지 진입해서 로그인하다보니 너무 귀찮아져버림 블로그 관리 → 꾸미기 → 스킨 편집 → HTML 편집 아래 코드를 원하는 자리에 넣어주면 되는데, 우선은 버튼이 들어갈 자리만 만들어 줬다. 나는 사이드바 요소로 만들어서 넣었고, 허전해서 옆자리에 티스토리 홈으로 가는 링크도 넣어줬다. 그리고 아래 코드를 HTML편집기의 바로 윗부분이나 또는 바로 위에 넣어주면 된다. ..
TIP/Tistory
요새는 티스토리 스킨 제작할 때 각종 바로가기 메뉴를 안 넣는 추세인 것 같다. 내가 쓰는 hELLO 스킨도 마찬가지. 워낙 깔끔하고 가독성 좋은 게 목적인 스킨이다보니 글쓰기 버튼이 없다. 기본 스킨에는 글쓰기, 관리 등등 나오는 토글이 있었던 것 같은데(사실 기억이 가물가물함) 물론 제작자분께서 블로그 메뉴에 글쓰기 링크를 걸어놓는 방법으로 팁을 주신 게 있다. https://pronist.tistory.com/5#FAQ-1 hELLO 티스토리 스킨을 소개합니다. hELLO 스킨은 초기에 기능이 많이 없었다가, 티스토리 블로거 여러분의 호응에 힘입어 기능의 추가와 함께 업데이트를 여러 번 하게 되었습니다. hELLO 1.0 때와 비교하면 비교할 수도 없을 만큼의 pronist.tistory.com 그..
STUDY/네트워크
세션 장비는 일반적인 2,3계층 네트워크 장비와 달리 세션을 이해하고 세션 테이블을 유지한다. 세션 테이블 정보를 이용해 패킷을 변경애플리케이션 성능을 최적화하고 보안을 강화하기 위해 패킷을 포워드(Forward)하거나 드롭(Drop)이런 기능을 충분히 활용하기 위해선 다음과 같은 사항들을 고려해야 한다.애플리케이션과 세션 장비 간 세션 정보를 동일하게 유지애플리케이션의 세션 시간과 서비스 방향성을 고려하고 비대칭 경로를 피해야 함네트워크에서 세션 장비가 중간에 있을 때 생기는 대부분의 문제는 이런 부분을 고려하지 않아서 발생하는데, 이는 세션 장비에서 설정을 변경하거나 애플리케이션 로직을 변경해 해결할 수 있다.이러한 고려사항들에 대해 자세히 알아보자.1. 세션 테이블 유지, 세션 정보 동기화종단 장비..
STUDY/네트워크
IP가 부족해지면서 NAT기술이 등장하고 보안용 방화벽, 프록시와 같은 장비들이 등장하며 4계층 이상에서 동작하는 장비가 많아지면서 4계층에서 동작하는 장비도 네트워크 장비에 포함되었다. 4계층에서 이해해야 하는 키워드 포트 번호 시퀀스 번호 ACK 번호 통신의 방향성, 순서 세션 테이블 4 계층 장비? 4계층 전송 계층 4계층 이상 장비는 2,3계층 장비와는 다르게 세션 테이블과 그 안에서 관리하는 세션 정보가 가장 중요하다. 따라서 이들을 세션 장비라고 부르기도 함 세션 장비가 고려해야 할 것 세션 테이블 세션 장비는 세션 테이블 기반으로 운영 세션 정보를 저장, 확인하는 작업 전반에 대한 이해 필요 세션 테이블에 남은 라이프타임 존재 Symmetric(대칭) 경로 요구 Inbound와 Outboun..
STUDY/네트워크
3계층 프로토콜에 대해 정리하려고 보니 이걸 먼저 정리해야 할 것 같다. 이들은 네트워크 출발지에서 목적지로 데이터를 전송할 때 사용하는 통신 방식이다. 유니캐스트 출발지-목적지 1:1 통신 브로드캐스트 1:All 동일 네트워크에 존재하는 모든 호스트가 목적지 멀티캐스트 1:N 하나의 출발지 - 다수의 목적지 애니캐스트 1:1 이되 동일 그룹 내의 목적지이며, 가장 가까운 호스트에서 응답 유니캐스트 프로토콜(Unicast Protocol) 고유 주소로 식별된 하나의 네트워크 목적지에 1:1로(One-to-One) 트래픽 또는 메시지를 전송하는 프로토콜 브로드캐스트 프로토콜(Broadcasting Protocol) 하나의 송신자가 같은 서브 네트워크상의 모든 수신자에게 데이터를 전송하는 프로토콜 멀티캐스트..
STUDY/네트워크
앞에서 라우팅/스위칭에 대해 공부할 때, 라우팅 방법에 대해 다뤘었다.참고 : 라우팅 - 경로 정보 얻기 [Network/네트워크] 라우터(Router) - 경로 지정 : 라우팅/스위칭참고 ⌜IT 엔지니어를 위한 네트워크 입문⌟ 길벗, 2023 [5장] 라우터/L3 스위치: 3계층 장비 | 5.2 경로 지정 - 라우팅/스위칭 (p.163~176) *책으로 공부하며 필요한 부분을 정리한 것이므로, 책의 모든chaeyami.tistory.com다이렉트 커넥티드 / 스태틱 라우팅 / 다이나믹 라우팅이 있다고 했었는데, 이 방법에 대해 더 자세히 알아보자.다이렉트 커넥티드참고 : 다이렉트 커넥티드(Direct Connected)앞에서 라우터나 PC에 IP 주소, 서브넷 마스크를 입력하면 라우팅 테이블이 자동으로..
STUDY/네트워크
앞서 라우터의 동작 방식에서, 라우터가 패킷을 처리할 땐 크게 두 가지 작업을 수행한다고 했었다.참고 - 라우터의 동작 방식과 역할 [Network/네트워크] 라우터(Router) - 동작 방식과 역할참고 ⌜IT 엔지니어를 위한 네트워크 입문⌟ 길벗, 2023 [5장] 라우터/L3 스위치: 3계층 장비 | 5.1 라우터의 동작 방식과 역할 (p.160~163) *책으로 공부하며 필요한 부분을 정리한 것이므로, 책의 모든chaeyami.tistory.com경로 지정 : 경로 정보를 얻어 경로 정보를 정리하는 역할패킷 포워딩 : 정리된 경로 정보를 기반으로 패킷을 포워딩하는 역할라우팅 동작과 라우팅 테이블홉-바이-홉(Hop-by-Hop) 라우팅경로 지정 단계에서는 단말부터 목적지까지의 경로를 모두 책임지는 ..
STUDY/네트워크
라우터(Router)라우터는 둘 이상의 패킷 전환 네트워크 또는 서브네트워크를 연결하는 장치입니다.라우터는 데이터 패킷을 의도한 IP 주소로 전달하여 이러한 네트워크 간의 트래픽을 관리하고, 여러 장치가 동일한 인터넷 연결을 사용할 수 있도록 하는 등, 두 가지 주요 기능을 제공합니다. 라우터에는 여러 유형이 있지만, 대부분의 라우터는 근거리 통신망(LAN)과 광역 네트워크(WAN) 간에 데이터를 전달합니다.LAN은 특정 지리적 영역으로 제한된, 연결된 장치 그룹입니다.LAN에는 일반적으로 단일 라우터가 필요합니다. 반면, WAN은 넓은 지리적 영역에 분산된 대규모 네트워크입니다. 예를 들어, 전국의 여러 위치에서 운영되는 대규모 조직 및 회사는 각 위치에 대해 별도의 LAN이 필요하며, 이 LAN은 다..
STUDY/네트워크
스위치 3부작의 마지막이다!스위치의 기능기본 동작 : MAC 주소를 인식하고 패킷을 전달VLAN 기능 : 한 대의 장비에서 논리적으로 네트워크를 분리스패닝 트리 프로토콜(STP) : 네트워크의 루프를 방지오늘은 마지막 STP에 대해 배워볼 거당!STP(Spanning Tree Protocol) : 루프를 확인하고 적절히 포트를 사용하지 못하게 해 루프를 예방하는 메커니즘 👉🏻 루프가 생기지 않도록 유지하는게 목적루프? 그게 뭔데?알아볼 게 많으니 우선 SPoF에 대해 간단히 살펴보고 루프, 그리고 STP에 대해 차례로 알아보도록 하자.SPoF(Single Point of Failure: 단일 장애점)은 하나의 요소 때문에 장애가 발생할 경우, 전체 시스템에 장애가 발생하는 지점을 말한다.즉, 하나의 ..
STUDY/네트워크
이전 글에서 스위치의 기능은 3가지가 있다고 했다.기본 동작 : MAC 주소를 인식하고 패킷을 전달VLAN 기능 : 한 대의 장비에서 논리적으로 네트워크를 분리스패닝 트리 프로토콜(STP) : 네트워크의 루프를 방지이번엔 이 중 VLAN에 대해 알아보자!VLAN(Virtual Local Area Network)이란?물리적 배치와 상관없이 LAN을 논리적으로 분할, 구성하는 기술 👉🏻 VLAN을 나누면 하나의 장비를 서로 다른 네트워크를 갖도록 논리적으로 분할한 것이 된다.👉🏻 그냥 한마디로 물리적 스위치 하나를 그룹으로 나눠 여러 논리적 스위치를 만들어버리는 것각 부서별로 네트워크를 분할하거나, 다수의 단말을 네트워크에 연결하는 등 분리가 필요할 때 사용또는 과도한 브로드캐스트로 인한 단말들의 성..
ChaeYami
'분류 전체보기' 카테고리의 글 목록 (3 Page)