728x90 전체 글230 Webserv 그 길었던 과정의 기록[1편] 시작하면서 42 공통 과정 중 큰 규모와 긴 기간, 난이도로 악명 높은 WebServ 과제를 진행하였습니다.과제는 공부와 설계 그리고 코드 완성까지 해서, 2023년 6월 26일부터 2023년 8월 21일까지 진행하였습니다.팀원은 총 4명이서 진행하였고, 진행과정 및 팀 프로젝트 후기에서 어떻게 협업을 진행했는지 다루도록 하겠습니다.WebServ 과제를 한 단어로 말하면 HTTP1.1로 동작하는 웹서버를 만드는 과제입니다.과제의 공부했던 내용과 코드에 대한 디테일 한 부분은 추후에 게시물로 가이드 형식으로 남기고 이곳에는 프로젝트를 어떻게 진행했는지와 느낀점을 위주로 쓰는 회고록을 먼저 작성하도록 하겠습니다.개념공부 시간 (대략 1주~2주)과제의 주제는 'nginx의 동작을 참고하여 웹서버를 만들기'였습.. 2024. 1. 28. 백준 16987번 계란으로 계란치기(C++) 문제16987번: 계란으로 계란치기원래 프로그래머의 기본 소양은 팔굽혀펴기를 단 한 개도 할 수 없는 것이라고 하지만 인범이는 3대 500을 넘기는 몇 안되는 프로그래머 중 한 명이다. 인범이는 BOJ에서 틀린 제출을 할 때마다 턱걸이를 5회 하는 기적의 운동 루틴을 통해 뇌와 근육을 동시에 단련한다. 근육을 단련할 때 식단이 정말로 중요하다는 것을 아는 인범이는 탄수화물이 많은 밥이나 빵 따위의 아침 식사를 대신해 단백질이 많은 계란찜을 해먹는다. 계란찜을 먹기 위해서는 계란을 깨야 하는데, 인범이는 힘이 너무 넘치는 나머지 부엌의 대리석을 이용해 계란을 깨면 늘 껍데기가 산산조각나 뒷처리가 너무 어렵게 되곤 한다. 어떻게 하면 계란을 조심스럽게 깰 수 있을까 고민하던 인범이에게 유현이는 굉장히 좋은 .. 2023. 11. 12. 백준 9205번 맥주 마시면서 걸어가기(C++) 문제9205번: 맥주 마시면서 걸어가기송도에 사는 상근이와 친구들은 송도에서 열리는 펜타포트 락 페스티벌에 가려고 한다. 올해는 맥주를 마시면서 걸어가기로 했다. 출발은 상근이네 집에서 하고, 맥주 한 박스를 들고 출발한다. 맥주 한 박스에는 맥주가 20개 들어있다. 목이 마르면 안되기 때문에 50미터에 한 병씩 마시려고 한다. 즉, 50미터를 가려면 그 직전에 맥주 한 병을 마셔야 한다.https://www.acmicpc.net/problem/9205정답 코드#include #include #include #include #include int t_case; int n;//편의점 갯수 int home_x, home_y; int dest_x,dest_y; bool vis[101]; //-32768 ~ 3.. 2023. 11. 12. 백준 14620번 꽃길(C++) 문제14620번: 꽃길2017년 4월 5일 식목일을 맞이한 진아는 나무를 심는 대신 하이테크관 앞 화단에 꽃을 심어 등교할 때 마다 꽃길을 걷고 싶었다.https://www.acmicpc.net/problem/14620정답 코드코테 당시 통과 코드#include #include #include using namespace std; int N; //화단 한변의 길이 //0~N-1까지 //N~ 2N-1까지 //abs(b-a) == (N || N-1 || N+1) int table[201][201]; int least_money = 2147483647; int money_cnt(int x1,int y1){ int cnt = 0; cnt +=table[y1][x1]; cnt+= table[y1+1][x1]; c.. 2023. 11. 12. 백준 1343번 __폴리오미노__(C++) 문제1343번: 폴리오미노민식이는 다음과 같은 폴리오미노 2개를 무한개만큼 가지고 있다. AAAA와 BBhttps://www.acmicpc.net/problem/1343정답 코드#include #include using namespace std; string input; int main(){ cin >> input; int s_size = input.size(); for(int i=0;i < s_size;i++){ int cnt=0; for(int j=0;j+i 2023. 11. 12. [데이터 통신 7강] Transmission Media, Switching& Performances 전자기 신호가 어떠한 매질을 통해서 전달되는지를 이야기하는 챕터입니다.상식적인 수준에서 내용을 소개한다고 보시면 됩니다.Transmission MediaTransmission media : 데이터를 전송하는데 지나가는 매질을 말합니다.크게 무선과 유선으로 나뉩니다.전기 신호를 이용한 장거리 통신19세기 모스의 전신 발명으로 시작되었습니다.전보를 통한 통신은 느리고 금속 매체에 의존했습니다사람의 목소리전화는 1869년에 발명되었습니다무선 통신1895년 헤르츠가 고주파 신호를 전송할 수 있게 되면서 시작되었습니다나중에 마르코니는 대서양을 통해 전신으로 메시지를 전송하는 방법을 고안했습니다.전송 미디어의 종류크게 유선과 무선으로 나뉘는데 유선을 Guided 라고 무선을 Unguided라고 부르기도 합니다.구리.. 2023. 10. 27. [데이터 통신 6-2강] Constellation Diagram & Analog to Analog Modulation Constellation Diagram어떤 PSK던 sin wave로 표현을 합니다.ASK와 PSK 같은 경우 amplitude 와 phase 가지고 나타낸다 frequency가 고정되어있기 때문에amplitude와 phage를 가장 효과적으로 나타낼 수 있는 방법 중 하나가 2차원 상의 한 점으로 나타내는 방법 입니다.원점으로 부터 거리가 amplitude이고 angle 이 phage가 된다고 보면 됩니다.각 그래프를 보고 왜 그렇게 되는지 알자.x 축이 sin y축이 cos이라고 봐봅시다.QPSK : cos과 sin 값은 서로 직교한다. x,y = (sin,cos)여기서 왜 11 01 00 10 이렇게 가는지 궁금할 수 있는데 grey code 때문입니다.즉 그대로 표현하면 1 아니면 0 이렇게 si.. 2023. 10. 27. [데이터 통신 6-1강] Analog Transmission Analog Transmission시작하면서..지난 시간은 디지털 신호를 그대로 보내는 유선통신에서 사용되는 기법을 배웠다.오늘 이야기 할 부분은 송신기에서 수신기로 보낼 때 아날로그 시그널로 보내는 상황을 보시면 됩니다.사실 우리가 만드는 데이터는 대부분 디지털인데 디지털을 아날로그로 바꾸는 것을 modulelation이라고 합니다.아날로그를 아날로그로 바꾸는 것도 modulation이라고 합니다.Multiplexing아날로그 신호를 동시에 보낼 수 있는데 품질이 떨어지지 않고 어떻게 되는지 공부할 예정입니다.Digital to Analog : 일반적인 이동통신의 예시Analog to Analog : 라디오 예시Digital Data to Analog Signal (Digital to Analog Mo.. 2023. 10. 27. [데이터 통신 5-3강] 아날로그-디지털 변환(PCM, 델타 변조) 아날로그-디지털 변환(PCM, 델타 변조)아날로그-디지털 변환(ADC)주로 application layer에서 발생하는 부분 입니다.이것도 physical layer에서 쓰기도 합니다.실제로 무선 통신을 할 때는 디지털 데이터들이 아날로그 시그널로 나가는데 증폭 후 디지털로 받습니다.둘 다 쓰는데 개념은 똑같다. (마이크나 녹음에 다 들어가 있음)펄스 코드 변조와 델타 변조라는(pulse code modulation and delta modulation) 두 가지 기술에 대해 설명1. Pulse Code Modulation (PCM)(펄스 코드 변조)Modulation 과 deModulation 을 합처서 우리는 MoDem이라고 부릅니다.가장 많이 사용되는 방법이 PCM입니다.Sampling: 특정 시간.. 2023. 10. 27. 이전 1 2 3 4 5 6 7 8 ··· 26 다음 728x90