๋ฐฑ์ค-๋จ๊ณ๋ณ๋ก ํ์ด๋ณด๊ธฐ-'๊ธฐ๋ณธ ์ํ 1' ํํธ ๋ฌธ์ ๋ค ์ค ๊ธฐ์ตํด์ผ ํ ๊ฐ๋ ๋ฐ ๋ฌธ์ ๋ค์ ๊ธฐ๋กํฉ๋๋ค.
: ์ด์ต์ด ๋ฐ์ํ๋ ์ง์ ์ ์ฐพ๋ ๋ฌธ์
A, B, C = map(int, input().split())
n = 0 //ํ๋งค๋์ผ๋ก์จ 0์ผ๋ก ์ด๊ธฐํ (๊ตฌํ๊ณ ์ ํ๋ ๊ฐ)
if B >= C:
print(-1)
else:
print(int(A/(C-B)+1))
A + Bn = Cn ์ด๋ฉด ์ด ์์ ๊ณผ ์ด ๋น์ฉ์ด ๊ฐ์์ง๊ฒ ๋๋ค.
์์ต๋ถ๊ธฐ์ ์ด ์กด์ฌํ๋ ค๋ฉด ์ค๋ฅธ์ชฝ ์์ด ์ปค์ง๊ธฐ ์์ํด์ผ ํ๋ฏ๋ก
B๊ฐ C๋ณด๋ค ๊ฐ๊ฑฐ๋ ์ปค์ง ๊ฒฝ์ฐ (B >= C), ์์ด ์ฑ๋ฆฝํ ์ ์๊ฒ ๋๋ค.
๊ทธ๋ฌ๋ฏ๋ก ์ด ๊ฒฝ์ฐ์ -1์ ์ถ๋ ฅํ๋ค.
๊ทธ ์ธ์ ๊ฒฝ์ฐ์ ์์ต๋ถ๊ธฐ์ (์ต์ด๋ก ์ด์ต์ด ๋ฐ์ํ๋ ํ๋งค๋)์ ์ถ๋ ฅํ๋ค.
A + Bn = Cn A = (C-B)n A / (C-B) = n
์์์ ๊ตฌํ n์ ์์ ๊ณผ ๋น์ฉ์ด ๊ฐ์์ง๊ฒ ๋๋ ์ง์ ์ด๋ฏ๋ก
A / (C-B) ์ + 1์ ํด์ผ ์ต์ด๋ก ์ด์ต์ด ๋ฐ์ํ๊ฒ ๋๋ค.
: ๋ฒ์ง์ด ํ์ฑ๋๋ ๊ท์น์ ๋ฐ๋ผ ๋ฒ์ง์ ์์น๋ฅผ ๊ตฌํ๋ ๋ฌธ์
n = int(input())
room = 1 # ๋ฒ์ง ๊ฐ์
plus = 6 # ๋ฒ์ง ๋จ๊ณ๊ฐ 6์ ๋ฐฐ์๋ก ์ฆ๊ฐ
count = 1 # ๋ฒ์ง ๋ฒํธ
while n > room:
room += plus
plus += 6
count += 1
print(count)
- ๊ฐ์ฅ์๋ฆฌ์ ํด๋น๋๋ ๋ฒ์ง ๊ฐ์๊ฐ ๋ช๊ฐ์ธ์ง ํ์ ํ๋ค๋ฉด 6์ ๋ฐฐ์์ฉ ๋จ๊ณ์ ๋ฐ๋ผ ๋ฒ์ง ๊ฐ์๊ฐ ์ฆ๊ฐํจ์ ํ์ ํ ์ ์๋ค.
2022.01.05
: ๋ถ์์ ์์์์ ๊ท์น์ ์ฐพ๋ ๋ฌธ์
x = int(input())
line = 0 # ํด๋น ์ค ๋ฒํธ
end_index = 0 # ํด๋น line์ ๋ง์ง๋ง num์ ์ธ๋ฑ์ค๋ฒํธ
while end_index < x:
line += 1
end_index += line
num = end_index - line # line=์ง์: x์ top์ ์ฐจ, line=ํ์: x์ bottom์ ์ฐจ
if line % 2 == 0: # line์ด ์ง์์ผ ๋
top = x - num
bottom = line - top + 1
else: # line์ด ํ์์ผ ๋
bottom = x - num
top = line - (bottom) + 1
print(f"{top}/{bottom}")
2022.01.06
: ๋ฌํฝ์ด์ ์์ง์์ ๊ณ์ฐํ๋ ๋ฌธ์
import sys
import math
a, b, v = map(int, input().split())
day = 0
day = (v-b) / (a-b)
print(math.ceil(day))
- day= (v-b) / (a-b) ์ด ์์ด ๋์ค๊ธฐ๊น์ง์ ๊ณผ์ ์ ๋ฉ๋ชจ์ฅ์ ๋์ ์ด๋ฉด์ ํ์ด๊ฐ๋ค.
- ์ ์์ ์ฌ๋ผ๊ฐ๋ฉด ๋์ด์ ๋ด๋ ค์ค์ง ์๊ธฐ ๋๋ฌธ์ +a๊ฐ ํ๋ฒ ๋ ์์ด์ผ ํ๋ค.
(day-1)(a-b)+a = v
daya - dayb - a + b + a = v
daya - dayb + b = v
day(a-b) + b = v
day = (v-b) / (a-b)- '/'๋ ๋๋์ ๋ชซ์ ๊ตฌํ๋ ๊ฒ์ด๊ธฐ ๋๋ฌธ์ 5.4 ์ด๋ฐ ์์ผ๋ก ๋์ค๋ฉด 6์ผ ๋๋ ๊ฒ์ด๋ค. ๊ทธ๋ฌ๋ฏ๋ก math.ceil()๋ฅผ ์ด์ฉํด์ day ๊ฐ์ ์ฌ๋ฆผํด์ฃผ์ด์ผ ํจ.
2022.01.06
: ํธํ ๋ฐฉ ๋ฒํธ์ ๊ท์น์ ์ฐพ์ ์ถ๋ ฅํ๋ ๋ฌธ์
import sys
t = int(input())
for i in range(t):
h, w, n = map(int, input().split())
num = n // h + 1 # ๋ชซ
floor = n % h # ๋๋จธ์ง
if n % h == 0:
num = n // h
floor = h
print(f'{floor*100+num}')
- // : ๋๋์ ๋ชซ
- % : ๋๋์ ๋๋จธ์ง
- ํธํ ์ ๋งจ ์์ธต์ผ ๊ฒฝ์ฐ์ ๋๋์ ๊ฐ์ด ๋ฑ ๋จ์ด์ง๊ธฐ ๋๋ฌธ์ ํธ๋ฅผ ๊ตฌํ ๋+1์ ํ์ง ์์๋ ๋๋ค. ๊ทธ๋ฌ๋ฏ๋ก ์ด ๊ฒฝ์ฐ๋ if๋ฌธ์ผ๋ก ๋ฐ๋ก ์กฐ๊ฑด์ ์ค์ ํด์ฃผ์ด์ผ ํจ.
2022.01.06
: ์ธต๊ณผ ๊ฑฐ์ฃผ์ ์์ ๊ท์น์ ์ฐพ๋ ๋ฌธ์
import sys
t = int(input())
for i in range(t):
k = int(input()) # ์ธต
n = int(input()) # ํธ
base = [i for i in range(1, n+1)] # 0์ธต์ ๋ํ ํธ
for j in range(k):
for i in range(1, n):
base[i] += base[i-1]
print(base[-1])
2022.01.10
: 5์ 3์ ์ต์ ํ์๋ก ํฉํ์ฌ N์ ๋ง๋๋ ๋ฌธ์
n = int(input())
count = 0
while n >= 0: # n์ด 5๋ก ๋๋ ์ง ๋ ๊น์ง ๋ฐ๋ณต
if n % 5 == 0: # 5๋ก ๋ฐ๋ก ๋๋ ์ง๋ฉด 5๋ก ๋๋ ๋ชซ์ ๋ฐ๋ก ์ถ๋ ฅํ๋ค.
count += (n // 5)
print(count)
break
n -= 3 # ๋ฐ๋ก 5๋ก ๋๋ ์ง๋ ๊ฒ์ด ์๋๋ผ๋ฉด 3kg๋ฅผ ๋นผ์ฃผ๊ณ ๋ด์ง ๊ฐ์ +1
count += 1
else:
print(-1)
2022.01.10
: ํ์ด์ฌ ๊ฐ์ ์ธ์ด๋ 10,000์๋ฆฌ ์ ๋์ ์์ฐ์๋ ์์ ๋กญ๊ฒ ๋ค๋ฃฐ ์ ์์ต๋๋ค. ํ์ง๋ง C/C++์ด๋ผ๋ฉด ์ด ๋ฌธ์ ๋ฅผ ์ด๋ป๊ฒ ํ๊น์?
a, b = map(int, input().split())
print(a+b)
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
void reverse(char arr[]) // ์ญ์ ์ ๋ ฌ
{
int len = strlen(arr);
for (int i = 0; i < len / 2; i++)
{
char temp = arr[i];
arr[i] = arr[len - i - 1];
arr[len - i - 1] = temp;
}
}
int main(void)
{
char A[10002] = {0}, B[10002] = {0}, res[10003] = {0}; // ์๋ฆฌ์๋ฅผ ๋ปํจ
int carry = 0, i; //carry: ๋ฐ์์ฌ๋ฆผ
scanf("%s%s", A, B);
reverse(A);
reverse(B);
int len = strlen(A) > strlen(B) ? strlen(A) : strlen(B);
for (i = 0; i < len; i++)
{
int sum = A[i] - '0' + B[i] - '0' + carry;
while (sum < 0)
sum += '0';
if (sum > 9)
carry = 1;
else
carry = 0;
res[i] = sum % 10 + '0'; //๋ฐ์์ฌ๋ฆผ ํ ๋จ์ 1์ ์๋ฆฌ ์์ ์์คํค์ฝ๋ ์ ์ฅ
}
if (carry == 1)
res[len] = '1'; //๊ฐ์ฅ ํฐ ์๋ฆฟ์์์ ๋ฐ์์ฌ๋ฆผ์ด ๋ฐ์ํ๋ฉด ๋ฐฐ์ด์ ๋ง์ง๋ง์ 1์ ์ถ๊ฐ
reverse(res); //์ญ์์ผ๋ก ์ ๋ ฌํด ์ํ๋ ๊ฐ์ผ๋ก ๋ณต์
printf("%s", res);
return 0;
}
2022.01.10
: ๊ฑฐ๋ฆฌ์ ๋ฐ๋ฅธ ์ฅ์น ์ฌ์ฉ ํ์๋ฅผ ์ถ๋ ฅํ๋ ๋ฌธ์
import sys
t = int(input())
for i in range(t):
x, y = map(int, input().split())
distance = y - x
count = 0 # ์ด๋ ํ์
move = 1 # count๋ณ ์ต๋ ๊ฐ๋ฅ ์ด๋ ๊ฑฐ๋ฆฌ
total = 0 # ์ด๋ ๊ฑฐ๋ฆฌ ํฉ
while total < distance:
count += 1
total += move
if count % 2 == 0:
move += 1
print(count)