본문 바로가기

728x90

전체 글

[백준] 9659번 : 돌 게임 5 - C/C++ 쉽다 쉬워.#include //돌 게임 5using namespace std;int main(){ int n; cin >> n; if(n  제출해볼까~틀렸다.나는 간단하게 생각한다고 생각했는데, 너무 간단하게 생각했던 것 같다.코드를 이렇게 써놓고 맞을 것이라는 기대를 한 내 자신이 너무 웃기다. 다시 접근해보자.그럼 나는 힌트를 볼 수 밖에 없다.힌트? 백준에 힌트도 있나요? 할 수 있는데내가 말하는 힌트는 '알고리즘 분류'이다.알고리즘 분류가 '게임 이론' 이라는데 처음 본다. 진짜로. 게임 이론게임 이론은 말 그대로 두 명 이상의 플레이어가 규칙에 따라 경쟁하거나 협력하는 상황을 수학적으로 분석하는 이론이다. 프로그래밍에서 말하는 게임 이론 문제는 보통 두 명이 번갈아 가며 어떤 행.. 더보기
[백준] 3036번 : 링 - C/C++ 문제부터 이해해보자.문제에서 요구하는 것은 간단..? 하다. 여러 개의 링이 주어졌을 때, 첫 번째 링을 기준으로 나머지 링들이 몇 바퀴 도는지를 기약분수 형태로 나타내는 문제이다.쉽게 말해서 첫 번째 링이 한 바퀴 돌 때, 다른 링들이 몇 바퀴 도는지를 구하는 것이다. 문제는 아래의 아이디어를 가지고 출발한다.기준은 첫번째 링의 반지름으로 한다.나머지 링들의 반지름을 입력받는다.첫번째 링과의 회전 비율을 고려하여 기약분수 형태로 나타낸다.최대공약수 개념을 사용한다. (기약분수 형태로 만들기 위함)필요한 반지름 개수 n과 n개의 반지름을 입력하면 다음과 같이 코드를 작성할 수 있다.int n;vector v;int main(){ cin >> n; for(int i = 0; i > x; .. 더보기
[컨퍼런스] Pleos 25 Developer Conference by HMG 후기 3월 28일 금요일 오전 10시, 서울 강남에 위치한 코엑스에서 Pleos 25 행사가 개최되었다.행사장은 코엑스 D홀 & 오도토리움 이었다.하루 동안만 진행되는 행사였어서 규모가 크지 않을 것이라고 생각했는데, 아니었다.행사 관계자분들도 많았고, 나처럼 참여한 분들도 많이 있었다.많은 것을 보고 경험하고 싶어서 이번 행사에 참여하게 되었다. 나는 사전 예약을 했고, 행사 3일 전에 입장 QR과 함께 문자가 왔다.행사 당일 등록데스크에 QR을 제시하니까 소속과 이름이 화면에 보였고, 맞는지 간단한 확인 후 명찰을 받을 수 있었다.참석자 명찰과 팜플렛을 받아들고 입구를 서성였다.입구 바로 옆쪽에 사진 찍어주는 부스가 있어서 기념으로 한 장 찍어줬다. ^^ 원래는 13시부터 연합 세션이라고 강연해주시는 것이.. 더보기
[백준] 1107번 : 리모컨 - C/C++ 문제를 읽고 바로 풀이 과정이 떠오르지는 않았다.그 이유는 문제 자체를 이해 못했기 때문.문제에서 요구하는 내용을 정리하면 다음과 같다. 리모컨을 이용해서 채널 n으로 이동할 때, 버튼을 최소로 누르는 문제이다.리모컨은 0~9까지의 숫자 버튼과 +/- 버튼이 있다.일부 숫자 버튼이 고장났을 수 있기 때문에 이 부분까지 고려해야 한다.(고장난 버튼의 수와 번호는 사용자가 입력함) 문제 풀이 순서는 다음과 같다.1. 채널 입력 받기2. 동작하지 않는 버튼 입력하기3. 결과 출력 당연한 과정을 설명했다. 이제 문제를 풀어보자. 크게 두 단계로 문제 풀이를 할 수 있다. +/- 버튼만 사용하는 경우현재 채널은 100이므로, |100 - N| 만큼 +/- 버튼을 눌러 이동할 수 있다.이를 초기 최소 횟수로 설정한.. 더보기
[후기] 구글 스타트업 캠퍼스 멤버십 카드 발급 방법 방문 후기 구글 스타트업 캠퍼스에 들어본 사람도 있고 그게 뭐야? 라고 생각하고 있는 사람도 있을텐데오늘은 그 구글 스타트업 캠퍼스에 관해 글을 써보려고 한다.구글 스타트업 캠퍼스는 '세계 각지에서 무상 교육과 멘토링, 문제 해결에 도전하는 다양한 멤버들로 구성된 커뮤니티를 통해 기술 기반 스타트업들이 구글 최고의 리소스와 지원 혜택을 누릴 수 있는 물리적 공간을 제공한다'고 공식 홈페이지에 나와있다. 한국에는 서울에만 위치해 있고, 한국을 포함한 마드리드/상파울루/도쿄/텔아비브/바르샤바 총 6개 국에서 운영되고 있다. 어떻게 알게되었는가.스터디를 진행하면서 무료로 이용할 수 있는 공간을 찾던 중 좋은 기회로 알게 되었다. 구글 스타트업 캠퍼스는 단순한 업무 공간을 제공하는 것이 아니다. 이렇게 프로그램도 진행하고.. 더보기
[Docker/도커] MacOS에서 Docker 설치하기 아래의 사이트에 접속한다.https://www.docker.com/products/docker-desktop/ Docker Desktop: The #1 Containerization Tool for Developers | DockerDocker Desktop is collaborative containerization software for developers. Get started and download Docker Desktop today on Mac, Windows, or Linux.www.docker.com 각자의 환경에 맞는 버전의 Docker를 설치하자.별도로 설정할 것도 없이 바로 설치가 되었다..dmg 파일 옮기기 작업은 해야함Docker가 잘 깔렸는지 궁금하다면 터미널 창에 docker .. 더보기
[AI] SLAM(Simultaneous Localization and Mapping)이란? 이번 글에서는 자율주행, 로봇, 증강현실(AR) 등의 핵심 기술 중 하나인 SLAM(Simultaneous Localization and Mapping)은 자신의 위치(Localization)를 파악하면서 주변 환경의 지도(Map)를 동시에 생성하는 기술에 대해 알아보고자 한다. 1.  SLAM이란?SLAM은 이동하는 기기(로봇, 차량, 드론 등)가 자신의 위치를 파악하면서 주변 환경을 실시간으로 지도화하는 기술이다. 즉, SLAM이 가능하면 GPS가 없는 실내에서도 로봇이 스스로 이동할 수 있고, 자율주행차가 도로를 인식하며 주행할 수 있다.SLAM을 수행하려면 다음 두 가지 작업을 동시에 진행해야 한다.위치 추정(Localization) → "나는 지금 어디에 있는가?"지도 작성(Mapping) → .. 더보기
[운영체제] 가상기억장치란? 1. 가상기억장치보조기억장치(하드디스크)의 일부를 주기억장치처럼 사용하는 기법이다.주기억장치 용량이 작더라도 가상기억장치를 통해 큰 용량처럼 사용 가능하다.2. 블록 분할 방법(1) 페이징 (Paging) 기법가상기억장치를 같은 크기의 블록(페이지)으로 나누어 운용하는 기법이다.외부 단편화는 발생하지 않으나, 내부 단편화는 발생한다.페이지와 메모리 영역 구분페이지 크기별 비교페이지 크기기억장소 효율단편화입출력 시간맵 테이블클수록감소증가감소감소작을수록증가감소증가증가 (2) 세그멘테이션 (Segmentation) 기법가상 메모리를 크기가 다른 논리적 단위(세그먼트)로 분할하여 메모리를 할당하는 기법이다.세그먼트 테이블을 참조하여 주소 변환을 수행한다.내부 단편화는 발생하지 않으나, 외부 단편화는 발생한다.세.. 더보기

728x90