목록math (4)
라떼는말이야

https://github.com/mangbaam/CodingTest GitHub - mangbaam/CodingTest: 프로그래머스, 백준 등 코딩테스트 풀이를 기록하는 저장소입니다. 프로그래머스, 백준 등 코딩테스트 풀이를 기록하는 저장소입니다. Contribute to mangbaam/CodingTest development by creating an account on GitHub. github.com 밑의 사진을 클릭하면 문제 링크로 이동합니다 문제 수 N개 A1, A2, ..., AN이 주어진다. 이때, 연속된 부분 구간의 합이 M으로 나누어 떨어지는 구간의 개수를 구하는 프로그램을 작성하시오. 즉, Ai + ... + Aj (i ≤ j) 의 합이 M으로 나누어 떨어지는 (i, j) 쌍의 개..

밑의 사진을 클릭하면 문제 링크로 이동합니다 문제 우리는 10진수를 사용한다. 10진수는 0부터 9까지 숫자를 사용한다. 12345가 10진수라면, 이 값은 $$1*10^{4}+2*10^{3}+3*10^{2}+4*10^{1}+5*10^{0}$$이다. 자 이제 -10진법을 보자. 이 수도 0부터 9까지 숫자를 사용하고, -10진수 12345는, $$1*(-10)^{4}+2*(-10)^{3}+3*(-10)^{2}+4(-10)^{1}+5(-10)^{0}$$이다. 따라서, 10진법으로는 10000-2000+300-40+5 = 8265가 된다. 어떤 수를 음의 진법으로 나타내는 방법도 항상 일정하다. 음의 진법이 신기한 이유는 음수를 나타내는데 –가 필요 없기 때문이다. 예를 들어, -10진법에서, 10진수 -1..

문제 두 자연수 A와 B가 있을 때, A = BC를 만족하는 자연수 C를 A의 약수라고 한다. 예를 들어, 2의 약수는 1, 2가 있고, 24의 약수는 1, 2, 3, 4, 6, 8, 12, 24가 있다. 자연수 A의 약수의 합은 A의 모든 약수를 더한 값이고, f(A)로 표현한다. x보다 작거나 같은 모든 자연수 y의 f(y) 값을 더한 값은 g(x)로 표현한다. 자연수 N이 주어졌을 때, g(N)을 구해보자. 입력 첫째 줄에 자연수 N(1 ≤ N ≤ 1,000,000)이 주어진다. 출력 첫째 줄에 g(N)를 출력한다. 나의 풀이 여러 번의 시간 초과 끝에 맞춘 문제이다. 그만큼 이 문제를 풀 수 있는 방법도 다양하고, 훨씬 더 효율적인 풀이가 존재한다는 의미이다. 실패한 코드들은 깃허브에 올려놓았다...

문제 2와 5로 나누어 떨어지지 않는 정수 n(1 ≤ n ≤ 10000)가 주어졌을 때, 1로만 이루어진 n의 배수를 찾는 프로그램을 작성하시오. 입력 입력은 여러 개의 테스트 케이스로 이루어져 있다. 각 테스트 케이스는 한 줄로 이루어져 있고, n이 주어진다. 출력 1로 이루어진 n의 배수 중 가장 작은 수의 자릿수를 출력한다. 나의 풀이 단순한 풀이 기본적인 아이디어로는 1, 11, 111, 1111... 순으로 늘려보며 n으로 나누어 떨어지는지 확인하는 방법을 생각해볼 수 있다. 틀린 풀이는 아니지만 큰 수를 나눠야 하는 상황이 발생하기 때문에 시간 복잡도가 증가할 수 있다. PyPy3 언어로 백준에 제출한 결과 통과할 수 있었다. 해당 코드는 다음과 같다. def solution(n): count..