전체 글

전체 글

    BaekJoon(2292)::벌집

    문제 2292번: 벌집 위의 그림과 같이 육각형으로 이루어진 벌집이 있다. 그림에서 보는 바와 같이 중앙의 방 1부터 시작해서 이웃하는 방에 돌아가면서 1씩 증가하는 번호를 주소로 매길 수 있다. 숫자 N이 주어졌 www.acmicpc.net 문제파악 위 구역을 보면 n번째 범위에 있는 구역까지 n번 이동함을 볼 수 있다. 빨간선이 구역의 시작과 끝을 비교할수 있음을 알수있다. 1, 〔1 < n

    [Spring Boot]Spring MVC Framework

    Spring MVC Framework Spring MVC Framework는 MVC 패턴을 따르는 Framework입니다. 여기서 Spring은 자신만의 독자적인 Class를 통해 처리를 한다. 여기서 MVC패턴은 여러 디자인 패턴(Design Pattern)중 하나로 간략하게 다음과 같은 세가지 요소로 나누어 관리한다. 1. Model : 어플리케이션의 정보나 데이터(DB) 등의 내용을 다룬다. 2. View : 사용자에게 보여지는 화면, UI를 말하며 Model로부터 정보를 받아 표시하게 된다. 3. Controller : 데이터와 비즈니스 롷직사이의 상호동작을 관리하는 영역으로, 모델과 뷰를 통제한다. MVC패턴은 크게 MVC-1과 MVC-2로 나눌수 있은데 여기서 스프링 MVC는 MVC-2를 채택..

    프레임워크란?(What is Framework?)

    프레임워크 소프트웨어의 구체적인 부분에 해당하는 설계와 구현을 재사용이 가능하게끔 일련의 협업화된 형태로 클래스들을 제공하는 것 by 랄프 존슨(Ralph Johnson) 교수(GoF 디자인패턴 저자) 딱히... 해당 정의를 봐도 크게 이해가 되지 않는다. 다만, JAVA 개발자라면 Spring을 경험해봤을거다. 더불어, 다른 언어를 사용하는 개발자 분들도 각각의 프레임워크를 경험 했을 것이다. 그렇다면 프레임워크는 무엇일까? 프레임워크 vs 라이브러리 vs 플랫폼 프레임워크 개발을 진행할 때 필수적인 요소에 해당하는 설계와 구현을 재사용하기 수월하도록 만들어둔 툴로, 언어, 컴파일러, API, 라이브러리, 알고리즘, 지원 프로그램 등을 포함하고 있다. 한마디로 소프트웨어 개발에 필요한한 뼈대를 제공하는..

    BaekJoon(2839)::설탕 배달

    문제 2839번: 설탕 배달 상근이는 요즘 설탕공장에서 설탕을 배달하고 있다. 상근이는 지금 사탕가게에 설탕을 정확하게 N킬로그램을 배달해야 한다. 설탕공장에서 만드는 설탕은 봉지에 담겨져 있다. 봉지는 3킬로그 www.acmicpc.net 문제파악 : 설탕의 무게가 주어지고 2개의 봉지가 주어지어 더 적은 봉지로 나눌 수 있게한다. : 즉, 최소 봉지개수를 구해야한다. 문제해결 : 최대한 적은 봉지의 개수 > 우선 여러 해결방법중 'greedy algorithm'을 생각할 수 있다. : 선택은 5kg 그리고 3kg을 선택할 수 있다. 5kg을 선택시 이후 선택에 영향을 주지 않음을 통해 '탐욕스런 선택 조건이 만족 됨을 알수 있다.' 5kg부터 선택해나가다 3kg을 선택하여 전체 봉지의 갯수를 구할 수..

    BaekJoon(2164)::카드2

    문제 2164번: 카드2 N장의 카드가 있다. 각각의 카드는 차례로 1부터 N까지의 번호가 붙어 있으며, 1번 카드가 제일 위에, N번 카드가 제일 아래인 상태로 순서대로 카드가 놓여 있다. 이제 다음과 같은 동작을 카드가 www.acmicpc.net 문제파악 : 카드가 쌓인 모양과 제거를 하는 방법을 보면 '큐'가 떠오른다. 카드를 쌓는다 : push 맨위의 카드를 제거한다 : pop 맨위 카드를 맨 아래로 옮긴다 : front데이터 push > pop 카드가 1장남을때까지 반복 문제풀이 : 큐는 제공하는 stl를 이용하며, 행동을 반복하는 조건을 적절하게 위치한다. 소스코드 #include #include #include using namespace std; int main() { cin.tie(NU..

    BaekJoon(18258)::큐2

    문제 18258번: 큐 2 첫째 줄에 주어지는 명령의 수 N (1 ≤ N ≤ 2,000,000)이 주어진다. 둘째 줄부터 N개의 줄에는 명령이 하나씩 주어진다. 주어지는 정수는 1보다 크거나 같고, 100,000보다 작거나 같다. 문제에 나와있지 www.acmicpc.net 문제파악 : 자료구조 'Queue'를 정확히 이해하고 해당 자료구조를 작성하고 요청하는 명령어를 작성할 수 있어야한다. [명령어] push X: 정수 X를 큐에 넣는 연산이다. pop: 큐에서 가장 앞에 있는 정수를 빼고, 그 수를 출력한다. 만약 큐에 들어있는 정수가 없는 경우에는 -1을 출력한다. size: 큐에 들어있는 정수의 개수를 출력한다. empty: 큐가 비어있으면 1, 아니면 0을 출력한다. front: 큐의 가장 앞에..

    BaekJoon(1037)::약수

    문제 1037번: 약수 첫째 줄에 N의 진짜 약수의 개수가 주어진다. 이 개수는 50보다 작거나 같은 자연수이다. 둘째 줄에는 N의 진짜 약수가 주어진다. 1,000,000보다 작거나 같고, 2보다 크거나 같은 자연수이고, 중복되� www.acmicpc.net 문제파악 : 진짜약수의 갯수, 모든 약수의 값이 주어짐 「약수란?」 : 두 정수 a, b에 대하여 b=ac를 만족하는 정수 가 존재한다면 a를 b의 약수라 한다. : 즉, 어떠한 수로 정수가 나누어떨어지는 것을 대하여 이르는 말. : 문제를 보면 자기와 1은 제외한다고 하였으니 자명약수를 제외한 고유약수중 자기 자신을 제외한 진약수가 주어짐을 알 수있다. 문제풀이 : 약수의 특징을 알면 가장 큰약수와 작은 약수의 곱이 해당 정수 N이 됨을 알수 있..