본문 바로가기

분류 전체보기133

C++ 백준 ios_base::sync_with_stdio(false); cin.tie(null); 구문을 추가해주는 이유 C++로 백준이나 알고리즘 문제를 풀 때, 보통 실행속도를 높이기 위해 아래 구문을 사용합니다. #include using namespace std; int main() { ios_base::sync_with_stdio(false); cin.tie(NULL); cout.tie(NULL); // endl (x) -> '\n'사용 return 0; } C++의 cin과 cout은 scanf와 printf보다 속도가 느립니다. 출력은 큰 차이는 아니지만 입력같은 경우는 2배 이상의 속도 차이가 난다고 합니다. 실제로 아래글 예시의 입력의 경우, scanf를 쓰는 경우 평균 0.9206초가 걸리고, cin을 쓰는 경우는 평균 2.1742초가 걸립니다. 출력의 경우, printf를 쓰는 경우 평균 0.8614초가.. 2022. 12. 26.
REMIX vs NEXT.JS 비교하기 최근 클라이언트 사이드 렌더링(CSR)을 기반으로 발전해온 프론트엔드 개발에서 이 CSR의 단점을 보완하기 위해 과거의 웹 동작 방식인 서버 사이드 렌더링(SSR)을 채택하는 경우가 많아졌습니다. (이 글을 읽기 전 , 브라우저 렌더링에 관한 글을 읽고 보시면 좋을 것 같습니다.) 브라우저 렌더링 CSR와 SSR 최근 클라이언트 사이드 렌더링(CSR)을 기반으로 발전해온 프론트엔드 개발에서 이 CSR의 단점을 보완하기 위해 과거의 웹 동작 방식인 서버 사이드 렌더링(SSR)을 채택하는 경우가 많아졌습니다. parkkingcar.tistory.com SSR을 가능하게 하는 React 메타 프레임워크인 Remix 와 Next.js 에 대해 비교하며 설명하겠습니다. Remix 리액트 메타 프레임워크로 2021.. 2022. 12. 23.
브라우저 렌더링 CSR와 SSR 최근 클라이언트 사이드 렌더링(CSR)을 기반으로 발전해온 프론트엔드 개발에서 이 CSR의 단점을 보완하기 위해 과거의 전통적인 웹 동작 방식인 서버 사이드 렌더링(SSR)을 채택하는 경우가 많아졌습니다. 리액트를 사용하여 웹 프론트엔드 개발을 할 때, CSR 방식으로 개발이 가능하고 Next.js, Remix 등의 프레임워크를 사용하거나 환경세팅을 통해 SSR 방식으로 개발이 가능합니다. 1. WEB 먼저 웹의 역사를 살펴봐야 합니다. 1990년 중반까지는 대부분의 웹이 정적 사이트로 정해진 url로 접속하면 서버의 html 문서를 받아와서 보여주는 형식이였습니다. 즉, 페이지 안에서 다른 링크를 클릭하면 다시 서버의 해당 html 문서 받아왔습니다. 1998년, XMLHttpRequst의 등장으로 J.. 2022. 12. 23.
C++ 백준 BOJ 11726 2 x n 타일링 2×n 크기의 직사각형을 1×2, 2×1 타일로 채우는 방법의 수를 구하는 프로그램을 작성하는 문제입니다. 자주 접할 수 있는 DP문제(다이나믹 프로그래밍) 유형입니다. 보통 DP문제는 피보나치 수열, 재귀함수 등을 이용하여 해결 가능합니다. 11726번: 2×n 타일링 2×n 크기의 직사각형을 1×2, 2×1 타일로 채우는 방법의 수를 구하는 프로그램을 작성하시오. 아래 그림은 2×5 크기의 직사각형을 채운 한 가지 방법의 예이다. www.acmicpc.net #include using namespace std; int dp[1001]; int main() { ios::sync_with_stdio(false); cin.tie(NULL); cout.tie(NULL); int num; cin >> num;.. 2022. 12. 19.
[OOP] 객체 지향 프로그래밍이란? 이 글에서는 객체 지향 프로그래밍에 대한 내용을 다룹니다. ( 객체 지향 프로그래밍 = 프로그래밍 언어 + 객체지향 규칙(개념) ) 객체 지향 설계 (SOLID원칙)에 관한 내용은 아래 글을 참고해주세요 먼저 아래 객체 지향 설계 을 본 후, 이 카테고리에 있는 글을보면 좋을 것 같습니다. [Java] 객체 지향 설계란? (SOLID) 이번 시간은 객체지향의 4대특성인 캡슐화, 상속, 추상화, 다형성 을 이용하여 객체 지향을 올바르게 설계할 수 있도록 도와주는 원칙들을 알아 볼까 한다. 객체 지향을 공부해봤고, 객체 지향으 limkydev.tistory.com 객체 지향 프로그래밍 - 위키백과, 우리 모두의 백과사전 위키백과, 우리 모두의 백과사전. 객체 지향 프로그래밍(영어: Object-Oriente.. 2022. 12. 5.
[C++] 우선순위 큐(Priority Queue) 우선순위 큐(Priority Queue) 먼저 큐(Queue)는 먼저 들어오는 데이터가 먼저 나가는 선입선출(FIFO) 형식의 자료구조입니다. 우선순위 큐(Priority Queue)는 이와 다르게 항상 우선순위가 가장 높은 데이터에만 관심이 있고, 이 데이터만 먼저 나갈 수 있는 형태의 자료구조입니다. 이는 배열, 연결 리스트를 통해서도 구현이 가능하지만, 힙을 이용해야지만이 삽입, 삭제 시간을 O(logN)으로 맞출 수가 있기 때문에 보통 힙을 이용하여 우선순위 큐를 구현하고는 합니다. 숫자가 주어질 때마다 앞에 있는 숫자들을 전부 탐색해 그 중 최댓값을 골라야 할때 사용하면 됩니다. C++에서는 이를 표현하기 위해 priority_queue라는 STL을 이용할 수 있습니다. queue STL에 포함.. 2022. 12. 2.
[대학일자리센터] 발표/프레젠테이션 스킬 OBC 성공적인 발표를 위한 프레젠테이션 노하우 '핵심만 배워 바로 활용하는 발표/프레젠테이션 스킬'라는 주제로 진행한 2022학년도 9차 학습법 특강 정리내용입니다. 특강 강사님은 (주)디베이트포올의 이주승 대표님 입니다. 1. 명료한 말하기 생각화 발표 정리 기본 구조 마법의 숫자 3 사람들은 세 조각의 정보를 잘 기억한다. 이 3분할을 중요하게 생각하는 경향이 있다. - 발표 구조 OBC - 서론 (Opening) : 이야기 개요, 관심 유도 빠르게 생각을 정리해서 말하고 관심을 유도합니다. 적어도 내가 무엇을 말할지 알려준다. 간단한 요약정리 예시) 최근 환경/사회/지배구조를 뜻하는 ESG 경영에 대한 관심이 많아지고 있습니다. 환경 보호에 기여하고, 사회적 책을 다하고, 오너 개인의 이익만을 추구하지 .. 2022. 11. 25.
[한국장학재단] 오라클 기업탐방 안녕하세요 :) 한국장학재단에서 기획한 '오라클' 기업탐방 후기 작성해볼게요! 현재 재학중인 대학교의 교수님이 전 사장으로 근무하셨고 흥미가 생겨 참여하게 되었습니다. 기업탐방은 zoom에서 비대면으로 진행하였습니다. 오라클 Oracle 한국 | 클라우드 애플리케이션 및 클라우드 플랫폼 Oracle, MySQL HeatWave Lakehouse 발표 MySQL HeatWave의 인데이터베이스 포트폴리오에 새롭게 추가된 기능들을 통해 객체 저장소에서 수백 테라바이트 규모의 데이터를 처리 및 쿼리할 수 있습니다. www.oracle.com 오라클 미국의 대표적인 소프트웨어 회사 및 그 회사에서 만드는 RDBMS 오라클 데이터베이스의 약칭입니다. 여러 기업을 인수하면서 MYSQL, JAVA등의 저작권을 소유하.. 2022. 11. 22.
C++ 백준 BOJ 1212 8진수 2진수 8진수가 주어졌을 때, 2진수로 변환하는 프로그램을 작성하는 문제입니다. (난이도는 높지 않지만 출력값의 맨 앞이 0이 되는 경우, 시간초과 예외로 맨탈이..) 1212번: 8진수 2진수 첫째 줄에 8진수가 주어진다. 주어지는 수의 길이는 333,334을 넘지 않는다. www.acmicpc.net #include #include using namespace std; int main(){ string octal_str, binary_str = ""; cin >> octal_str; for(int i = 0; i < octal_str.size(); i++){ switch (octal_str[i]){ case '0': if(i == 0){ binary_str += "0"; break; } else{ binar.. 2022. 11. 15.