나를 제외한 천재들 블로그


- '분류 전체보기' 카테고리의 글 목록 (14 Page) -

분류 전체보기

    [JS] 백준 2869번 달팽이는 올라가고 싶다.

    [JS] 백준 2869번 달팽이는 올라가고 싶다.

    출처 백준 온라인 저지 www.acmicpc.net/problem/2869 2869번: 달팽이는 올라가고 싶다 첫째 줄에 세 정수 A, B, V가 공백으로 구분되어서 주어진다. (1 ≤ B < A ≤ V ≤ 1,000,000,000) www.acmicpc.net 문제 땅 위에 달팽이가 있다. 이 달팽이는 높이가 V미터인 나무 막대를 올라갈 것이다. 달팽이는 낮에 A미터 올라갈 수 있다. 하지만, 밤에 잠을 자는 동안 B미터 미끄러진다. 또, 정상에 올라간 후에는 미끄러지지 않는다. 달팽이가 나무 막대를 모두 올라가려면, 며칠이 걸리는지 구하는 프로그램을 작성하시오. 첫째 줄에 세 정수 A, B, V가 공백으로 구분되어서 주어진다. (1 ≤ B < A ≤ V ≤ 1,000,000,000) 풀이 단순히 반복..

    [JS] 백준 1463번 1로 만들기

    [JS] 백준 1463번 1로 만들기

    출처 백준 온라인 저지 www.acmicpc.net/problem/1463 1463번: 1로 만들기 첫째 줄에 1보다 크거나 같고, 106보다 작거나 같은 정수 N이 주어진다. www.acmicpc.net 문제 정수 X에 사용할 수 있는 연산은 다음과 같이 세 가지이다. 1. X가 3으로 나누어 떨어지면, 3으로 나눈다. 2. X가 2로 나누어 떨어지면, 2로 나눈다. 3. 1을 뺀다. 정수 N이 주어졌을 때, 위와 같은 연산 세 개를 적절히 사용해서 1을 만들려고 한다. 연산을 사용하는 횟수의 최솟값을 출력하시오. 첫째 줄에 1보다 크거나 같고, 106보다 작거나 같은 정수 N이 주어진다. 풀이 1을 빼거나 2나 3을 나누어 1로 만드는데 걸리는 연산 횟수의 최솟값을 구하는 문제입니다. DP 배열의 i..

    [JS] 백준 11718번 그대로 출력하기

    [JS] 백준 11718번 그대로 출력하기

    출처 백준 온라인 저지 www.acmicpc.net/problem/11718 11718번: 그대로 출력하기 입력이 주어진다. 입력은 최대 100줄로 이루어져 있고, 알파벳 소문자, 대문자, 공백, 숫자로만 이루어져 있다. 각 줄은 100글자를 넘지 않으며, 빈 줄은 주어지지 않는다. 또, 각 줄은 공백으로 시 www.acmicpc.net 문제 입력 받은 대로 출력하는 프로그램을 작성하시오. 각 줄은 100글자를 넘지 않으며, 빈 줄은 주어지지 않는다. 또, 각 줄은 공백으로 시작하지 않고, 공백으로 끝나지 않는다. 풀이 입력값을 받아오고 그대로 출력하면 됩니다. 코드 let input = require('fs').readFileSync('/dev/stdin').toString(); console.log(..

    [JS] 백준 1157번 단어 공부

    [JS] 백준 1157번 단어 공부

    출처 백준 온라인 저지 www.acmicpc.net/problem/1157 1157번: 단어 공부 알파벳 대소문자로 된 단어가 주어지면, 이 단어에서 가장 많이 사용된 알파벳이 무엇인지 알아내는 프로그램을 작성하시오. 단, 대문자와 소문자를 구분하지 않는다. www.acmicpc.net 문제 알파벳 대소문자로 된 단어가 주어지면, 이 단어에서 가장 많이 사용된 알파벳이 무엇인지 알아내는 프로그램을 작성하시오. 단, 대문자와 소문자를 구분하지 않는다. 첫째 줄에 알파벳 대소문자로 이루어진 단어가 주어진다. 주어지는 단어의 길이는 1,000,000을 넘지 않는다. 풀이 처음에는 for 문을 여러 개 사용하여 풀이를 하니 시간 초과가 나와버렸습니다. 그래서 최대한 for 문을 줄이는 방향으로 다시 풀이해보았습..

    [JS] 백준 10809번 알파벳 찾기

    [JS] 백준 10809번 알파벳 찾기

    출처 백준 온라인 저지 www.acmicpc.net/problem/10809 10809번: 알파벳 찾기 각각의 알파벳에 대해서, a가 처음 등장하는 위치, b가 처음 등장하는 위치, ... z가 처음 등장하는 위치를 공백으로 구분해서 출력한다. 만약, 어떤 알파벳이 단어에 포함되어 있지 않다면 -1을 출 www.acmicpc.net 문제 알파벳 소문자로만 이루어진 단어 S가 주어진다. 각각의 알파벳에 대해서, 단어에 포함되어 있는 경우에는 처음 등장하는 위치를, 포함되어 있지 않은 경우에는 -1을 출력하는 프로그램을 작성하시오. 첫째 줄에 단어 S가 주어진다. 단어의 길이는 100을 넘지 않으며, 알파벳 소문자로만 이루어져 있다. 풀이 알파벳 a부터 z까지를 for 문을 돌릴 때 각 알파벳을 해당하는 아..

    [JS] 백준 1712번 손익분기점

    [JS] 백준 1712번 손익분기점

    출처 백준 온라인 저지 www.acmicpc.net/problem/1712 1712번: 손익분기점 월드전자는 노트북을 제조하고 판매하는 회사이다. 노트북 판매 대수에 상관없이 매년 임대료, 재산세, 보험료, 급여 등 A만원의 고정 비용이 들며, 한 대의 노트북을 생산하는 데에는 재료비와 www.acmicpc.net 문제 A는 고정 비용, B는 가변 비용, C는 판매 가격이다. 예를 들어 A=1,000, B=70이라고 하자. 이 경우 노트북을 한 대 생산하는 데는 총 1,070만 원이 들며, 열 대 생산하는 데는 총 1,700만 원이 든다. 노트북 가격이 C만원으로 책정되었다고 한다. 일반적으로 생산 대수를 늘려 가다 보면 어느 순간 총수입(판매비용)이 총비용(=고정비용+가변비용) 보다 많아지게 된다. 최..

    [JS] 백준 10872번 팩토리얼

    [JS] 백준 10872번 팩토리얼

    출처 백준 온라인 저지 www.acmicpc.net/problem/10872 10872번: 팩토리얼 0보다 크거나 같은 정수 N이 주어진다. 이때, N!을 출력하는 프로그램을 작성하시오. www.acmicpc.net 문제 0보다 크거나 같은 정수 N이 주어진다. 이때, N! 을 출력하는 프로그램을 작성하시오. 첫째 줄에 정수가 주어진다. 풀이 팩토리얼을 간단히 설명한다면 "어떤 범위에 있는 모든 정수를 곱하는 것을 의미한다" 라고 말할 수 있겠습니다. 팩토리얼을 표시하는 기호는 "!" 입니다. 그리고 주의할 점은 팩토리얼은 1부터 시작합니다. 0! = 1 1! = 1 2! = 2 3! = 6 4! = 24 5! = 120 재귀 함수를 사용하여 풀이를 해보았습니다. 0 팩토리얼은 1인 것을 주의해야 합니다..

    [JS] 백준 4344번 평균은 넘겠지

    [JS] 백준 4344번 평균은 넘겠지

    출처 백준 온라인 저지 www.acmicpc.net/problem/4344 4344번: 평균은 넘겠지 대학생 새내기들의 90%는 자신이 반에서 평균은 넘는다고 생각한다. 당신은 그들에게 슬픈 진실을 알려줘야 한다. www.acmicpc.net 문제 첫째 줄에는 테스트 케이스의 개수 C가 주어진다. 둘째 줄부터 각 테스트 케이스마다 학생의 수 N이 첫 수로 주어지고, 이어서 N명의 점수가 주어진다. 점수는 0보다 크거나 같고, 100보다 작거나 같은 정수이다. 각 케이스마다 한 줄씩 평균을 넘는 학생들의 비율을 반올림하여 소수점 셋째 자리까지 출력한다. 풀이 첫째줄을 제외한(테스트 케이스 개수) 나머지 줄을 기준으로 for 문을 돌려줍니다. 이때 각각 케이스에서 split 메서드를 사용하여 공백을 기준으로..

    [JS] 백준 3052번 나머지

    [JS] 백준 3052번 나머지

    출처 백준 온라인 저지 www.acmicpc.net/problem/3052 3052번: 나머지 39, 40, 41, 42, 43, 44, 82, 83, 84, 85를 42로 나눈 나머지는 39, 40, 41, 0, 1, 2, 40, 41, 0, 1이다. 서로 다른 값은 모두 6개가 있다. www.acmicpc.net 문제 두 자연수 A와 B가 있을 때, A%B는 A를 B로 나눈 나머지 이다. 예를 들어, 7, 14, 27, 38을 3으로 나눈 나머지는 1, 2, 0, 2이다. 수 10개를 입력받은 뒤, 이를 42로 나눈 나머지를 구한 후 출력한다. 풀이 10개의 줄에 수가 존재합니다. 이 수를 각각 나머지(%)를 사용하여 42를 나눈 나머지를 구해줍니다. 이 값을 userNum이란 배열을 하나 생성해주고..

    [JS] 백준 11720번 숫자의 합

    [JS] 백준 11720번 숫자의 합

    출처 백준 온라인 저지 www.acmicpc.net/problem/11720 11720번: 숫자의 합 첫째 줄에 숫자의 개수 N (1 ≤ N ≤ 100)이 주어진다. 둘째 줄에 숫자 N개가 공백없이 주어진다. www.acmicpc.net 문제 N개의 숫자가 공백 없이 쓰여있다. 이 숫자를 모두 합해서 출력하는 프로그램을 작성하시오. 첫째 줄에 숫자의 개수, 둘째 줄에 숫자 N개가 공백 없이 주어진다. 풀이 공백 없이 주어지는 N개의 숫자를 split 메서드로 나눠줍니다. 주어진 N의 숫자를 기준으로 for 문을 돌려주고 숫자를 하나씩 가져와 누적시켜준 후 출력시켜줍니다. 코드 let input = require('fs').readFileSync('/dev/stdin').toString().split('\..

    [JS] 백준 1152번: 단어의 개수

    [JS] 백준 1152번: 단어의 개수

    출처 백준 온라인 저지 www.acmicpc.net/problem/1152 1152번: 단어의 개수 첫 줄에 영어 대소문자와 띄어쓰기로 이루어진 문자열이 주어진다. 이 문자열의 길이는 1,000,000을 넘지 않는다. 단어는 띄어쓰기 한 개로 구분되며, 공백이 연속해서 나오는 경우는 없다. 또한 � www.acmicpc.net 문제 영어 대소문자와 띄어쓰기만으로 이루어진 문자열이 주어진다. 몇 개의 단어가 있는지 구하는 프로그램을 작성하시오. 첫 줄에 영어 대소문자와 띄어쓰기로 이루어진 문자열이 주어진다. 풀이 split 메서드를 사용하여 공백을 기준으로 나눠주고 나눈 배열의 length 속성으로 배열 길이를 출력하면 됩니다. 하지만 해당 문제에는 빈 값만 들어오는 테스트 케이스가 있습니다. 조건문으로 ..

    [JS] 백준 2577번 숫자의 개수

    [JS] 백준 2577번 숫자의 개수

    출처 백준 온라인 저지 www.acmicpc.net/problem/2577 2577번: 숫자의 개수 첫째 줄에 A, 둘째 줄에 B, 셋째 줄에 C가 주어진다. A, B, C는 모두 100보다 같거나 크고, 1,000보다 작은 자연수이다. www.acmicpc.net 문제 세 개의 자연수 A, B, C가 주어질 때 A×B×C를 계산한 결과에 0부터 9까지 각각의 숫자가 몇 번씩 쓰였는지를 구하는 프로그램을 작성하시오. A × B × C 값이 17037300이라면 17037300 에는 0이 3번, 1이 1번, 3이 2번, 7이 2번 쓰였다. 첫째 줄에 A, 둘째 줄에 B, 셋째 줄에 C가 주어진다. A, B, C는 모두 100보다 같거나 크고, 1,000보다 작은 자연수이다. 풀이 A x B x C 값을 구..