Archive: 2018

0

백준[16236] - 아기 상어

문제백준 16236 문제 보기 접근 방법bfs를 활용하는 문제다. 처음에는 어떻게 풀어야 할지 잘 생각이 나지 않았다. 문제가 이해가 가질 않아서.. 차분히 다시 생각해보니 bfs로 풀면 N이 작기 때문에 가능할 것 같다는 생각이 들었다. bfs를 사용하되 과연 어떤 식으로 해결할 수 있을까.. 아기 상어가 자신보다 작은 길로만 가게끔 구현하고 다음 위치의

0

백준[9205] - 맥주 마시면서 걷기

문제백준 9205 문제 보기 접근 방법문제를 이해하기 힘들었다. 하지만 결론은 20병의 맥주를 다 마시기 전에 다른 편의점을 도착할 수 있는지의 여부, 그리고 도착지에 갈 수 있는지를 확인하면 된다. 맥주 20개로 갈 수 있는 거리는 1000이다. 따라서 출발지로 부터 1000이내 편의점 또는 목적지가 있는지 검사한다. 코드#include <iost

0

백준[2668] - 숫자고르기

문제백준 2668 문제 보기 접근 방법문제에서 요구하는 조건을 만족하려면 주어진 숫자들이 사이클을 이루는지 확인하고 사이클 갯수를 출력하면 된다. 코드#include <iostream> #include <algorithm> #include <vector> #include <utility> #include <set> using name

0

Command Pattern(커맨드 패턴)

들어가기이번 포스팅에서는 커맨드 패턴(Command Pattern) 에 대해서 알아보겠습니다. 본론1. 커맨드 패턴이란 무엇인가커맨드 패턴(Command Pattern)은 특정 행위(기능)을 캡슐화하여 클래스를 변경하지 않고 재사용할때 유용하게 사용합니다. 즉, 요청을 객체의 형태로 캡슐화하여 사용자가 보낸 요청을 나중에 이용할 수 있도록 매서드 이름, 매

0

백준[1389] - 케빈 베이컨의 6단계 법칙

문제백준 1389 문제 보기 접근 방법유저의 숫자가 주어진다면 각 유저들간 친구 관계를 파악하기 위해 모든 유저를 상대로 dfs 탐색을 진행한다. 유저 1과 나머지 유저들 간의 친구 관계를 계산하기 위해 유저 1 대상으로 연결 요소를 완전 탐색하고 거리차를 증가한다. 각 친구들까지의 거리차를 cnt 배열에 따로 저장한다. 탐색이 완료되면 총 거리를 계

0

백준[6603] - 로또

문제백준 6603 문제 보기 접근 방법숫자가 주어지면 중복없이 6자리 숫자를 만들고 출력하면 된다.ans 배열에 선택한 숫자를 저장한다. 숫자를 선택할때는 다음과 같은 규칙을 따른다. ans의 첫번째 숫자는 모든 숫자의 범위에서 선택한다. ans의 두번째 숫자는 이전 선택한 수 보다 +1한 범위에서 숫자를 선택한다. (ex. 숫자가 1 ~ 10까지 주어졌