수학 205

[백준 9471] 피사노 주기 [C]

풀이 주어지는 나머지 M이 모든 case가 일치한다는 보장이 없다. 매번 새로운 피보나치 수열의 수들에 대해 M으로 나눈 나머지로 이루어진 수열을 구해야한다. 다행히도 문제에서 요구하는 수열에는 Pisano Period라는 규칙성이 존재한다. 즉, 모든 피보나치 수열의 수들에 대해 계산할 필요가 없다. 결국 주기에 따라 수열들의 수는 반복을 하기 때문이다. 우선, 아래의 예제 Pisano Period table을 살펴보자. 피보나치 수열들을 K번째 피보나치수로 나누었을 때 나머지들의 수열이다. 즉, Pisano period의 주기는 나머지가 {0, 1}이 나올때를 기준으로 이루어진다는 것을 알 수 있다. 0만 나오는 경우에는 성립하지 않는다. 나머지가 {0, 1}이 나올때까지 반복해주자. 어차피 입력되는..

[백준 26531] Simple Sum [Python]

풀이 식과 답이 주어졌을 때, 식의 결과가 주어진 답과 일치하는지 판별하면 되는 문제다. 식에는 항상 두 수와 하나의 부호가 주어지기 때문에 문자열 분리를 통해 결과를 얻을 수 있지만, Python에서는 string을 입력받아 실행시키는 eval func를 지원하기 때문에 간단히 풀이할 수 있다. 소스코드 소스코드 보기 출처 26531번: Simple Sum You have hired someone to help you with inventory on the farm. Unfortunately, the new cowhand has very limited math skills, and they are having trouble summing two numbers. Write a program to dete..

[백준 26532] Acres [Python]

풀이 우선 입력으로 주어지는 가로와 세로를 통해 면적을 구하고, acre 단위로 변환 후 5 acre(one bag of corn seed will cover 5 acres)로 나누었을 때 충분한(ceil) 몫을 구해주어야 한다. 1 acre = 4840 square yard 이므로 넓이를 4840으로 나누어 acre단위로 변환해주자. 밭을 모두 덮기 위해 필요한 옥수수 종자의 봉지수를 구해야 하기 때문에 올림(ceil)을 해주었다. 소스코드 소스코드 보기 출처 26532번: Acres You have a rectangular field you want to plant with corn. You know the dimensions of the field in yards, and you know that ..

[백준 26561] Population [Python]

풀이 p에서 시작해 t초 후 총 몇명이 되는지 계산하면 되는 문제이다. 정확히 4초 또는 7초로 나누어 떨어지지 않으면 아무일도 일어나지 않으니, t에 대해 죽거나 태어나는 사람의 시간을 나누었을 때의 몫을 구해 계산해주면 된다. 소스코드 소스코드 보기 출처 26561번: Population The first line of input will contain a single integer n that indicates the number of lines to follow. Each line will consist of two integers, p and t, where p is the beginning population, and t is the amount of time that will pass. Bo..

[백준 26566] Pizza [Python]

풀이 조각 피자의 면적과 가격, 피자 한판의 반지름과 가격이 주어질 때 어떤 종류의 피자를 먹는 것이 더 싸게 먹을 수 있는지 알아내는 문제다. 면적을 가격으로 나눌 때 가치가 높은 쪽이 동일 가격 대비 더 싸게 먹을 수 있는 피자이다. 소스코드 소스코드 보기 출처 26566번: Pizza There’s a pizza store which serves pizza in two sizes: either a pizza slice, with area A1 and price P1, or a circular pizza, with radius R1 and price P2. You want to maximize the amount of pizza you get per dollar. Should you pick the ..

[백준 26592] Triangle Height [Python]

풀이 삼각형의 넓이(a)와 밑변의 길이(b)가 주어질 때 높이(h)를 구하면 되는 문제이다. 소수점 이하 2자리 까지만 출력해주자. 소스코드 소스코드 보기 출처 26592번: Triangle Height The first line will contain a single integer n that indicates the number of lines that follow. Each line will include the area and base length of a triangle with the two values separated by a single space. area base www.acmicpc.net

[백준 28097] 모범생 포닉스 [Python]

풀이 N개의 공부를 하는 동안 8시간 씩 (N - 1)번 휴식을 취한다. 휴식시간과 공부시간을 합해서 몇일 몇시간 공부했는지 출력해주면 된다. 소스코드 소스코드 보기 출처 28097번: 모범생 포닉스 모두가 알다시피, 포닉스는 포스텍을 대표하는 모범생이다! 포닉스는 최고의 모범생답게 남들과는 다른 공부 계획표를 가지고 있다. 포닉스는 총 $N$개의 공부 계획을 가지고 있다. $i$번째 공부 www.acmicpc.net

[백준 21354] Äpplen och päron [Python]

풀이 "Axel"가 판 사과의 개수와, "Petra"가 판 배의 개수가 주어질 때 각 과일의 가격과 개수를 곱해 총 판매액을 계산 후 누가 더 많이 팔았는지 알아내면 된다. 판매액이 동일하다면 "lika" 라고 출력하면 된다. 소스코드 소스코드 보기 출처 21354번: Äpplen och päron En rad med två heltal $A,P$ ($0 \le A,P \le 1000)$, antalet äpplen Axel har lyckats sälja, och antalet päron Petra har lyckats sälja. www.acmicpc.net

[백준 26767] Skarpetki [Python]

풀이 1부터 입력받은 수까지의 수들이 7또는 11로 나누어 떨어지는지 아닌지에 따라 대사를 출력해주면 된다. 만약, 어떤 조건에도 해당되지 않는다면 그냥 출력해주자. 소스코드 소스코드 보기 출처 26767번: Hurra! Mała Bajtynka lubi liczyć, a szczególnie uwielbia liczby 7 i 11. Mimo najlepszych starań nauczycieli, Bajtynka uroczyście celebruje, zarówno w mowie, jak i na piśmie, każdą napotkaną liczbę podzielną przez 7, zamiast jej nazwy wykrzykując (alb www.acmicpc.net