๐ช [ํจ์]
ํจ์ ๋จ๊ณ
ํจ์๋ฅผ ๊ตฌํํด ๋ด ์๋ค. (์ด ๋ฌธ์ ๋ C, C++, Python, Java, Go๋ง ์ง์ํฉ๋๋ค. ๊ทธ ์ธ์ ์ธ์ด๋ฅผ ์ฌ์ฉํ์ ๋ค๋ฉด ์ด ๋ฌธ์ ๋ฅผ ๋ฌด์ํด ์ฃผ์ธ์.)
www.acmicpc.net
๐ ๋ฌธ์ 1. ์ ์ N๊ฐ์ ํฉ [15596๋ฒ]
def solve(a):
return sum(a)
๐ ๋ฌธ์ 2. ์ ํ ๋๋ฒ [4673๋ฒ]
โ๏ธ a + b*X < c*X๊ฐ ๋๊ฒ ํ๋ ์ต์ X๋ฅผ ๊ตฌํ๋ฉด ๋จ. → '(C-B)X>A'
def d(num) -> int:
for x in str(num):
num += int(x)
return num
all_set = set(range(1, 10001))
not_ans_set = set() # {}
for n in sorted(all_set):
dn = d(n)
not_ans_set.add(dn)
ans_set = sorted(all_set - not_ans_set)
print(*ans_set, sep='\n')
โป ๋ค๋ฅธ ํ์ด
๋๋ณด๊ธฐ
[์ฌ๊ท๋ฅผ ์ด์ฉํ ํ์ด]
offset = 10000
arr = [0] * (offset + 1) # ์ธ๋ฑ์ค 0์ ๋ฌด์. 1๋ถํฐ 10000๊น์ง ์ทจ๊ธ.
def d(num):
for n in str(num):
num += int(n)
if num <= offset:
arr[num] = 1
else:
return
d(num)
if __name__ == '__main__':
for i in range(1, offset + 1):
if arr[i] == 0:
d(i)
for i in range(1, offset + 1):
if arr[i] == 0:
print(i)
๐ ๋ฌธ์ 3. ํ์ [1065๋ฒ]
def check_num(num) -> int:
count = 0
for n in range(1, num + 1):
if n < 100:
count += 1
else:
str_n = str(n)
between_val_1 = int(str_n[0]) - int(str_n[1])
between_val_2 = int(str_n[1]) - int(str_n[2])
if between_val_1 == between_val_2:
count += 1
return count
input_num = int(input())
print(check_num(input_num))
๐ ์ค์๊ฐ๋ ์ ๋ฆฌ
- sorted()
- print(*iterable, sep='\n')
- ์ซ์์ ๊ฐ ์๋ฆฌ ์ ํ์ฉ์ 'str'๋ก ์ฒ๋ฆฌํ๋ ๊ฒ์ด ํธํจ
728x90
'Algorithm > BOJ' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
| [๋ฐฑ์ค] 2309. ์ผ๊ณฑ ๋์์ด (0) | 2022.02.22 |
|---|---|
| [๊ธฐ์ด] 08. ๊ธฐ๋ณธ ์ํ 1 (์์ฑ ไธญ) (0) | 2022.02.22 |
| [๊ธฐ์ด] 05. 1์ฐจ์ ๋ฐฐ์ด (0) | 2022.02.07 |
| [๊ธฐ์ด] 04. while๋ฌธ (0) | 2022.02.07 |
| [๊ธฐ์ด] 03. for๋ฌธ (0) | 2022.02.07 |