일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 더 흔한 색칠 타일 문제
- 백준 32029번
- 그리디
- Prisma
- ERD
- ucpc 2024 예선 e번
- JavaScript
- 자바스크립트
- MongoDB
- map
- ucpc 2023 예선 d번
- 백준 32028번
- HTTP
- MySQL
- Next
- PROJECT
- Github
- html5
- branch
- router
- localstorage
- 지금 자면 꿈을 꾸지만
- ucpc 2023 예선 i번
- ccw 알고리즘
- 백준 28303번
- Express.js
- pm2
- insomnia
- string
- 게임 서버 아키텍처
- Today
- Total
목록전체 글 (98)
dh_0e
UCPC 2024 예선 J번 문제로, 대회 도중에 팀원이 풀던 문제를 이어받아 반례를 찾았고, 이를 해결한 뒤 제출했지만 끝내 풀지 못하고 아쉬워하며 대회를 마쳤다.#include #include #include using namespace std;int n;int ans = 0;string coins;vector tPos;int f(int left, int right) { for (int i = left + 1; i > t; while (t--) { tPos.clear(); cin >> n; cin >> coins; ans = 0; int leng = coins.length(); for (int i = 0; i 애드..
쿠키(Cookie)브라우저가 서버로부터 응답으로 Set-Cookie 헤더를 받은 경우 해당 데이터를 저장한 뒤 모든 요청에 포함하여 보냄사용자가 웹 사이트를 방문할 때마다 이전에 방문했던 정보를 기억하는 데이터 파일데이터를 여러 사이트에 공유할 수 있기 때문에 보안에 취약할 수 있음userId=user1;userName=kdh 와 같이 문자열 형식으로 쿠키 간에는 세미콜론(;)으로 구분됨 세션(Session)쿠키 기반으로 구성된 기술 but 클라이언트가 마음대로 데이터를 확인할 수 있는 쿠키와 달리 데이터를 서버에만 저장일반적으로 세션 Id를 쿠키를 이용해 클라이언트에게 전달, 서버는 이 세션 Id를 사용해 저장된 세션 데이터 조회보안성은 좋으나, 사용자가 많은 경우 데이터가 많아져 서버 컴퓨터가 감당하..
객체 리터럴{}로 객체 리터럴을 정의할 때 사용키-값 쌍으로 구성된 데이터 구조블록 문{}로 코드 블록을 정의할 때 사용여러 명령문을 묶어서 실행하는데 사용 객체 리터럴과 블록 문 구분JavaScript에서 똑같이 중괄호 '{}'를 사용하는 두 경우를 어떻게 구분할 수 있을까?'{}'가 객체 리터럴인지 블록 문인지 구분하기 어려운 경우가 있다.다음 예시는 그 구분이 애매할 때 발생할 수 있는 에러이다.let name, age;{ name, age } = { name: 'Alice', age: 30 }; // SyntaxError 발생name, age를 key값으로 가진 객체 리터럴에서 구조 분해 할당을 하려 한다.이때, 작성자는 '{ name, age }'를 객체 리터럴을 목적으로 작성했지만 실제로 컴파..
Git squash여러 개의 커밋을 하나의 커밋으로 합치는 방법Git 히스토리를 깔끔하게 유지할 수 있음하나의 기능이나 버그 수정에 대한 변경 사항을 단일 커밋으로 묶어 관리할 수 있음 squash가 필요한 상황여러 개의 작은 커밋이 있는 경우: 기능 개발 중, 여러 번의 커밋을 만들었지만, 실제로는 하나의 커밋으로 합치는 것이 더 의미있을 때중복되거나 불필요한 커밋이 많은 경우: 코드를 수정하면서 실수로 많은 중복 커밋이 생겼을 때PR(Pull Request) 전 커밋 정리: PR을 제출하기 전에 커밋을 정리하여 코드 리뷰어가 쉽게 이해할 수 있도록 할 때 사용 방법1. Git 로그 확인git log'git log' 명령어를 사용하여 최근 커밋 로그를 확인Git Desktop을 사용하거나 CLI로 커밋..
장르: 대규모 다중 사용자 온라인 게임플랫폼: 웹 브라우저ex) agar.io, deep.io1. 클라이언트게임 유저가 웹으로 접속합니다.서버와 통신하여 게임 플레이를 할 수 있습니다. 2. 매칭 서버서버 인원 수를 고려하여 최적의 서버(지역별)에 유저를 매칭합니다.클라이언트와 통신이 일정 속도 이상인 서버들 중에 매칭해줍니다. 3. 로비 서버게임에 입장할 닉네임을 입력합니다. 4. Leaderboard DB현재 유저들의 순위를 실시간으로 갱신해줍니다.유저의 정보는 ID가 전부입니다. 5. 호스트 매니저실제 게임 서버인 호스트 서버의 배치를 관리하고, 각 게임 세션을 할당합니다.각 지역에 호스트 매니저가 하나씩 존재합니다. 6. 호스트 서버실제로 게임 세션을 호스팅하는 서버입니다.지역별로 여러 개의 호스..