본문 바로가기

분류 전체보기66

[Javascript] 백준 11726: 2xn 타일링 문제 2×n 크기의 직사각형을 1×2, 2×1 타일로 채우는 방법의 수를 구하는 프로그램을 작성하시오. 아래 그림은 2×5 크기의 직사각형을 채운 한 가지 방법의 예이다. 입력 첫째 줄에 n이 주어진다. (1 ≤ n ≤ 1,000) 출력 첫째 줄에 2×n 크기의 직사각형을 채우는 방법의 수를 10,007로 나눈 나머지를 출력한다. 예제 입력 1 2 예제 출력 1 2 예제 입력 2 9 예제 출력 2 55 문제 풀이 n이 4인 경우까지 직접 그려보면 규칙을 찾을 수 있다. 이해를 돕기위해 그림을 그려왔다. 따라서 점화식은 dp[n] = dp[n-1] + dp[n-2] 이다. 다만, 처음엔 점화식 이후 10,007로 나누어주었더니 틀렸다. input을 최댓값인 1000으로 두고 dp를 직접 출력해보니 굉장히 .. 2023. 2. 8.
[Javascript] 백준 2720: 세탁소 사장 동혁 문제 미국으로 유학간 동혁이는 세탁소를 운영하고 있다. 동혁이는 최근에 아르바이트로 고등학생 리암을 채용했다. 동혁이는 리암에게 실망했다. 리암은 거스름돈을 주는 것을 자꾸 실수한다. 심지어 $0.5달러를 줘야하는 경우에 거스름돈으로 $5달러를 주는것이다! 어쩔수 없이 뛰어난 코딩 실력을 발휘해 리암을 도와주는 프로그램을 작성하려고 하지만, 디아블로를 하느라 코딩할 시간이 없어서 이 문제를 읽고 있는 여러분이 대신 해주어야 한다. 거스름돈의 액수가 주어지면 리암이 줘야할 쿼터(Quarter, $0.25)의 개수, 다임(Dime, $0.10)의 개수, 니켈(Nickel, $0.05)의 개수, 페니(Penny, $0.01)의 개수를 구하는 프로그램을 작성하시오. 거스름돈은 항상 $5.00 이하이고, 손님이 .. 2023. 2. 7.
[네트워크] 로드 밸런싱(Load Balancing) 로드 밸런싱이란? : 트래픽이 크게 증가하며, 아무리 뛰어난 서버라고 하더라도 방대한 트래픽을 전부 견딜 수 없게 되었다. 이를 해결하기 위해 오늘날 기업들은 서버를 추가로 구비하고 여러 대의 서버에 동일한 데이터를 저장해 수많은 트래픽을 효과적으로 분산하여 처리한다. 그러나 서버를 분리한다고 해도 트래픽이 한곳으로 쏠릴 수가 있다. 이때 트래픽을 여러대의 서버로 분산시켜주는 역할을하는 것이 로드 밸런싱이다. 트래픽이 증가한다면? scale-up : 증가한 트래픽을 견디기 위해 기존의 서버의 성능을 확장하는 방식 scale-out : 기존과 동일하거나 낮은 성능의 서버를 증설하는 방식 이때 scale-out방식을 채택한다면, 로드밸런싱이 반드시 필요하다. 로드 밸런싱 종류 로드 밸런싱의 종류는 OSI계층.. 2023. 2. 3.
[Javascript] 백준 1946: 신입 사원 문제 언제나 최고만을 지향하는 굴지의 대기업 진영 주식회사가 신규 사원 채용을 실시한다. 인재 선발 시험은 1차 서류심사와 2차 면접시험으로 이루어진다. 최고만을 지향한다는 기업의 이념에 따라 그들은 최고의 인재들만을 사원으로 선발하고 싶어 한다. 그래서 진영 주식회사는, 다른 모든 지원자와 비교했을 때 서류심사 성적과 면접시험 성적 중 적어도 하나가 다른 지원자보다 떨어지지 않는 자만 선발한다는 원칙을 세웠다. 즉, 어떤 지원자 A의 성적이 다른 어떤 지원자 B의 성적에 비해 서류 심사 결과와 면접 성적이 모두 떨어진다면 A는 결코 선발되지 않는다. 이러한 조건을 만족시키면서, 진영 주식회사가 이번 신규 사원 채용에서 선발할 수 있는 신입사원의 최대 인원수를 구하는 프로그램을 작성하시오. 입력 첫째 줄.. 2023. 2. 2.
[Javascript] 백준 13305: 주유소 문제 어떤 나라에 N개의 도시가 있다. 이 도시들은 일직선 도로 위에 있다. 편의상 일직선을 수평 방향으로 두자. 제일 왼쪽의 도시에서 제일 오른쪽의 도시로 자동차를 이용하여 이동하려고 한다. 인접한 두 도시 사이의 도로들은 서로 길이가 다를 수 있다. 도로 길이의 단위는 km를 사용한다. 처음 출발할 때 자동차에는 기름이 없어서 주유소에서 기름을 넣고 출발하여야 한다. 기름통의 크기는 무제한이어서 얼마든지 많은 기름을 넣을 수 있다. 도로를 이용하여 이동할 때 1km마다 1리터의 기름을 사용한다. 각 도시에는 단 하나의 주유소가 있으며, 도시 마다 주유소의 리터당 가격은 다를 수 있다. 가격의 단위는 원을 사용한다. 예를 들어, 이 나라에 다음 그림처럼 4개의 도시가 있다고 하자. 원 안에 있는 숫자는.. 2023. 2. 2.
[Javascript] 백준 10610: 30 문제 어느 날, 미르코는 우연히 길거리에서 양수 N을 보았다. 미르코는 30이란 수를 존경하기 때문에, 그는 길거리에서 찾은 수에 포함된 숫자들을 섞어 30의 배수가 되는 가장 큰 수를 만들고 싶어한다. 미르코를 도와 그가 만들고 싶어하는 수를 계산하는 프로그램을 작성하라. 입력 N을 입력받는다. N는 최대 105개의 숫자로 구성되어 있으며, 0으로 시작하지 않는다. 출력 미르코가 만들고 싶어하는 수가 존재한다면 그 수를 출력하라. 그 수가 존재하지 않는다면, -1을 출력하라. 예제 입력 1 30 예제 출력 1 30 예제 입력 2 102 예제 출력 2 210 예제 입력 3 2931 예제 출력 3 -1 예제 입력 4 80875542 예제 출력 4 88755420 문제 풀이 1) 배수 판정법에 따르면 30의.. 2023. 2. 2.