수학 205

[백준 24183] Affischutskicket [Python]

풀이 우편을 만들어 보내야 하는데 우편에는 다음과 같은 규격의 재료가 필요하다. C4 (0.229m * 0.324m) 크기의 봉투 1개 A3 (0.297m * 0.420m) 크기의 포스터 2개 A4 (0.210m * 0.297m) 크기의 안내지 1개 봉투의 한쪽 면 크기가 C4이기 때문에 봉투를 만들기 위해서는 C4 두장이 필요하다. 각 재료별로 g이 주어질 때 우편을 만드는데 총 몇 g인지 출력해주자. 봉투를 만들기 위해 C4는 2개, 포스터 두개, 안내지 1개를 소수점 아래 3번째 까지는 일치해야 하므로 3번째 자리까지만 출력했다. 소스코드 소스코드 보기 출처 24183번: Affischutskicket Indatan består av tre heltal mellan $50$ och $200$, yt..

[백준 24083] 短針 (Hour Hand) [Python]

풀이 현재시간(A)과 앞으로 지나는 시간(B) 이후 몇시인지 출력하는 문제다. 12로 나눌 때 나머지를 출력하면 되지만, 12시일때는 나머지가 0이니 12를 출력해주도록 하자. 소스코드 소스코드 보기 출처 24083번: 短針 (Hour Hand) JOI 高校の生徒である葵はアナログ時計を手に入れた.この時計には外周に沿って 12 個の目盛りがあり,時計回りに 1 から 12 までの番号が順に付けられている. この時計の短針は時計回 www.acmicpc.net

[백준 24079] 移動 (Moving) [Python]

풀이 A에서 B로 가는데 시간, B에서 C로 가는데 Y시간이 걸린다. 이때 X + Y시간이 Z시간 30분 이내인지 판별하는 문제다. 소스코드 소스코드 보기 출처 24079번: 移動 (Moving) A 地点から B 地点に移動するのに X 時間,B 地点から C 地点に移動するのに Y 時間かかる. A 地点から B 地点を経由して C 地点に移動するとき,Z 時間 30 分以内に移動することができる www.acmicpc.net

[백준 23825] SASA 모형을 만들어보자 [Python]

풀이 N개의 'S'와 M개의 'A' 의 갯수를 입력받아 'SASA'를 몇개 만들 수 있는지 출력하는 문제다. 'S', 'A' 가 두개씩 있을 때 'SASA'를 만들 수 있으니 입력받은 N과 M을 2로 나눈 몫에 대해 최솟값을 출력해주면된다. 소스코드 소스코드 보기 출처 23825번: SASA 모형을 만들어보자 당신은 SASA 연못에서 알파벳 S 모양의 블록 $N$개와 알파벳 A 모양의 블록 $M$개를 건졌다. 태영이는 연못에서 건진 블록을 이용해 학교에 전시할 SASA 모형을 최대한 많이 만들려고 한다. SASA 모형 $ www.acmicpc.net

[백준 28352] 10! [Python]

풀이 N!를 604800 ( 7*24*60*60) 으로 나눈 정수를 출력하면 된다. N이 최대 17이기 때문에 파이썬에서는 시간 내 정확한 수를 구할 수 있다. 소스코드 소스코드 보기 출처 28352번: 10! BOJ 채점 환경에서 int 자료형은 최대 $2^{31}-1=2\,147\,483\,647$까지의 정수를 저장할 수 있고, C/C++의 long long과 Java의 long은 최대 $2^{63}-1=9\,223\,372\,036\,854\,775\,807$까지의 정수를 저장할 수 있다. www.acmicpc.net

[백준 22015] 金平糖 (Konpeito) [Python]

풀이 세 정수 A, B, C를 입력받아 세 수 중 가장 큰 수와 동일하게 만들기 위해 나머지 두 수에 얼만큼 더하면 되는지 출력하는 문제다. 두 정수에 대해 가장 큰 수와의 차이에 대한 합은, 가장 큰 수 * 3에서 세 정수를 뺀 값과 동일하다. 소스코드 소스코드 보기 출처 22015번: 金平糖 (Konpeito) JOI 高校の生徒である葵と凛は,教師の理恵先生と一緒に 3 人で金平糖を同じ数だけ食べることにした. いま,葵は A 粒,凛は B 粒,理恵先生は C 粒の金平糖を食べた.3 人が食べた金 www.acmicpc.net

[백준 27172] 수 나누기 게임 [Java]

풀이 N명의 플레이어가 가진 카드에 대해서 서로 다른 플레이어의 카드 간 배수가 존재하는지 판별하는 문제다. 문제에서 두 번 이상 등장하는 카드는 없다고 하니 해당 번호의 카드의 존재여부를 기록해두면 쉽게 풀이할 수 있다. N명의 player에 대해 카드 번호를 입력받고 i번째 플레이어가 가진 카드가 있다고 표시해주자. 그 다음에는 N명의 player가 가진 카드의 배수에 해당하는 카드가 있는지 확인해주면 된다. 만약 카드 숫자가 i 일 때 카드 숫자가 j 인 카드가 있다면, j % i == 0 즉 j는 i의 배수다. 만약 최대 숫자 1,000,000 (SIZE - 1) 에 대해 i 배수를 탐색했는데 만족하는 카드가 없다면, i 카드를 가진 player는 점수를 얻을 수 없다. 점수를 score 배열에 ..

[백준 21591] Laptop Sticker [Python]

풀이 노트북과 스티커의 너비를 입력받아서 스티커를 충분히 붙일 수 있는 공간이 있는지 확인하면 되는문제이다. 충분한 공간이 있기 위해서는 스티커보다 2cm씩 커야한다. 소스코드 소스코드 보기 출처 21591번: Laptop Sticker The single line of input contains four integers $w_c$, $h_c$, $w_s$ and $h_s$ ($1 \le w_c, h_c, w_s, h_s \le 1,000$), where $w_c$ is the width of your new laptop computer, $h_c$ is the height of your new laptop computer, $w_s$ is the width of the laptop s www.acmic..