15596 : μ μ Nκ°μ ν©
π λ¬Έμ
μ μ nκ°κ° μ£Όμ΄μ‘μ λ, nκ°μ ν©μ ꡬνλ ν¨μλ₯Ό μμ±νμμ€.
μμ±ν΄μΌ νλ ν¨μλ λ€μκ³Ό κ°λ€.
- Python2, Python3, PyPy, PyPy3 : def solve(a : list) -> int
a : ν©μ ꡬν΄μΌ νλ μ μ nκ°κ° μ μ₯λμ΄ μλ 리μ€νΈ
(0 ≤ a[i] ≤ 1,000,000, 1 ≤ n ≤ 3,000,000)
π μΆμ μλ
ν¨μλ₯Ό μ¬μ©ν μ μλμ§
π§Ύ μ½λ
def solve(n): # ν¨μμ nμ μ
λ ₯ μ
ans = 0 # ansλ₯Ό 0μΌλ‘ μ΄κΈ°ν
ans += sum(n) # nλ₯Ό λν κ°μ ansμ μ μ₯
return ans # ans λ°ν
π» νμ΄μ€λͺ
1. ν¨μλ₯Ό μμ±νμ¬ nμ΄ μ λ ₯λμ μ μ€νλλ€.
2. sum()μ μ΄μ©νμ¬ nμ λν κ°μ ansμ μ μ₯ν¨.
3. nμ λν κ°μ λ°νν¨.
π νμ΅λ°©λ²
python ν¨μ μ μνλ λ°©λ² νμ΅νκΈ°.
4673 : μ ν λλ²
π λ¬Έμ
μ ν λλ²λ 1949λ μΈλ μνμ D.R Kaprekarκ° μ΄λ¦ λΆμλ€. μμ μ μ nμ d(n)μ nκ³Ό nμ κ° μ리 μλ₯Ό λνλ ν¨μλΌκ³ μ μνμ. μλ₯Ό λ€μ΄ d(75) = 75+7+5 = 87μ΄λ€.
μμ μ μ nμ΄ μ£Όμ΄μ‘μ λ, μ΄ μλ₯Ό μμν΄μ n, d(n), d(d(n)), d(d(d(n))), ...κ³Ό κ°μ 무ν μμ΄μ λ§λ€ μ μλ€.
μλ₯Ό λ€μ΄, 33μΌλ‘ μμνλ€λ©΄ λ€μ μλ 33+3+3 = 39μ΄κ³ , κ·Έ λ€μ μλ 39+3+9 = 51, λ€μ μλ 51+5+1 = 57μ΄λ€. μ΄λ°μμΌλ‘ λ€μκ³Ό κ°μ μμ΄μ λ§λ€ μ μλ€.
33, 39, 51, 57, 69, 84, 96, 111, 114, 120, 123, 129, 141, ...
nμ d(n)μ μμ±μλΌκ³ νλ€. μμ μμ΄μμ 33μ 39μ μμ±μμ΄κ³ , 39λ 51μ μμ±μ, 51μ 57μ μμ±μμ΄λ€. μμ±μκ° ν κ°λ³΄λ€ λ§μ κ²½μ°λ μλ€. μλ₯Ό λ€μ΄, 101μ μμ±μκ° 2κ°(91κ³Ό 100) μλ€.
μμ±μκ° μλ μ«μλ₯Ό μ ν λλ²λΌκ³ νλ€. 100λ³΄λ€ μμ μ ν λλ²λ μ΄ 13κ°κ° μλ€. 1, 3, 5, 7, 9, 20, 31, 42, 53, 64, 75, 89, 97
10000λ³΄λ€ μκ±°λ κ°μ μ ν λλ²λ₯Ό ν μ€μ νλμ© μΆλ ₯νλ νλ‘κ·Έλ¨μ μμ±νμμ€.
π μΆμ μλ
μ«μλ₯Ό μλ¦Ώμλλ‘ λλμ΄ κ³μ°μ΄ κ°λ₯νμ§
π§Ύ μ½λ
numbers = set(range(1, 10000)) # 10000λ³΄λ€ μκ±°λ κ°μ λ²μμ΄λ―λ‘ set()κ³Ό range()μ μ΄μ©νμ¬ 1λΆν° 10000κΉμ§ λ²μ μ€μ
numbers_set = set() # set() ν¨μ -> μ§ν©μΌλ‘ μ€λ³΅μ μμ°
for num in numbers: # 1λΆν° 10000κΉμ§ λ°λ³΅
for n in str(num): # numμ str()μ μ΄μ©νμ¬ λ¬Έμμ΄λ‘ λ³ν ν λ°λ³΅(75μΌ κ²½μ° 7, 5μ²λΌ νλμ© λΌμ΄λ΄κΈ° μν΄)
num += int(n) # nμ int()μ μ΄μ©νμ¬ μ μλ‘ λ³ν ν λν¨(75μΌ κ²½μ° 75+7+5μ κ°μ μ μ₯)
numbers_set.add(num) # numbers_setμ μ리 μλ₯Ό λΆλ¦¬νμ¬ λνκ°μ add()μ μ΄μ©νμ¬ μ μ₯ν¨
self_number = numbers - numbers_set # μμ±μκ° μλ μ«μμΈ μ
νλλ²λ₯Ό ꡬνκΈ° μν΄ 1λΆν° 10000κΉμ§μ μμ±μλ‘ μ겨λ μλ₯Ό λΉΌμ΄ κ΅¬ν¨
for self_num in sorted(self_number): # self_numbersλ₯Ό μ€λ¦μ°¨μμΌλ‘ μ λ ¬ν¨
print(self_num) # μ
νλλ² μΆλ ₯
π» νμ΄μ€λͺ
1. number λ³μμ set()κ³Ό range()μ μ΄μ©νμ¬ 1λΆν° 10000κΉμ§μ λ²μλ₯Ό μ€μ νμ¬ μ μ₯ν¨.
2. number_set λ³μμ set()μ μ μ₯.
3. forλ¬Έμ μ¬μ©νμ¬ 1λΆν° 10000κΉμ§ λ°λ³΅.
4. μ«μλ₯Ό μλ¦Ώμλλ‘ νλμ© λλκΈ° μνμ¬ numμ λ¬Έμμ΄λ‘ λ³ν ν λ°λ³΅νκ³ μλ¦Ώμλλ‘ λλ κ²μ λͺ¨λ λνκΈ° μν΄ μ μνμΌλ‘ λ³ννμ¬ λνκ³ numbers_set λ³μμ μ μ₯ν¨.
5. 1λΆν° 10000κΉμ§μ λ²μμΈ numbersκ³Ό μ ν λλ²κ° μλ μκ° μ μ₯λμ΄ μλ numbers_setμ λΉΌμ΄ μ ν λλ²λ₯Ό ꡬν¨.
6. self_numberμ μ€λ¦μ°¨μμΌλ‘ μ λ ¬νμ¬ μΆλ ₯ν¨.
π νμ΅λ°©λ²
μ«μλ₯Ό μλ¦Ώμλλ‘ λλλ λ°©λ²μ νμ΅νκΈ°.
1065 : νμ
π λ¬Έμ
μ΄λ€ μμ μ μ Xμ κ° μλ¦¬κ° λ±μ°¨μμ΄μ μ΄λ£¬λ€λ©΄, κ·Έ μλ₯Ό νμλΌκ³ νλ€.
λ±μ°¨μμ΄μ μ°μλ λ κ°μ μμ μ°¨μ΄κ° μΌμ ν μμ΄μ λ§νλ€.
Nμ΄ μ£Όμ΄μ‘μ λ, 1λ³΄λ€ ν¬κ±°λ κ°κ³ , Nλ³΄λ€ μκ±°λ κ°μ νμμ κ°μλ₯Ό μΆλ ₯νλ νλ‘κ·Έλ¨μ μμ±νμμ€.
π μΆμ μλ
μ«μλ₯Ό μλ¦Ώμλλ‘ λλμ΄ κ³μ°μ΄ κ°λ₯νμ§
π§Ύ μ½λ
n = int(input()) # λ²μ μ
λ ₯
han = 0
for i in range(1, n + 1): # 1λΆν° μ
λ ₯ν λ²μκΉμ§ λ°λ³΅
if i < 100: # λ§μ½ iκ° 100λ³΄λ€ μμ κ²½μ° (1λΆν° 99κΉμ§λ λͺ¨λ νμμ΄λ€)
han += 1 # 1μ μ¦κ°
else: # 100μ΄κ±°λ 100λ³΄λ€ ν΄ κ²½μ°
ns = list(map(int, str(i))) # map()μ μ΄μ©νμ¬ iλ₯Ό λ¬Έμμ΄λ‘ λ³ν ν 리μ€νΈμ μ μ₯νκ³ μ μνμΌλ‘ λ³ν(μ«μλ₯Ό μλ¦Ώμλλ‘ λΆλ¦¬)
if ns[0] - ns[1] == ns[1] - ns[2]: # λ§μ½ 첫 λ²μ§Έ μ«μ - λ λ²μ§Έ μ«μμ λ λ²μ§Έ μ«μ - λ§μ§λ§ μ«μμ κ°μ΄ κ°μ κ²½μ° λ±μ°¨μμ΄μ΄λ€.
han += 1 # 1μ μ¦κ°
print(han) # νμ μΆλ ₯
π» νμ΄μ€λͺ
1. nμ λ²μλ₯Ό μ λ ₯ν κ²μ μ μ₯νλ€.
2. forλ¬Έμ μ΄μ©νμ¬ 1λΆν° μ λ ₯ν λ²μκΉμ§ λ°λ³΅νλ€.
3. 1λΆν° 99κΉμ§λ λͺ¨λ νμμ΄λ―λ‘ ifλ¬Έμ μ΄μ©νμ¬ iκ° 100λ³΄λ€ μμ κ²½μ° νμ κ°μλ₯Ό 1μ μ¦κ°μν¨λ€.
3. 100μ΄κ±°λ 100 μ΄μμΌ κ²½μ°, μ«μλ₯Ό μλ¦Ώμλλ‘ λΆλ¦¬νμ¬ λ¦¬μ€νΈμ μ μ₯νκ³ μ²« λ²μ§Έ μ«μ - λ λ²μ§Έ μ«μμ κ°κ³Ό λ λ²μ§Έ μ«μ - λ§μ§λ§ μ«μμ κ°μ΄ κ°μ κ²½μ° λ±μ°¨μμ΄μ΄λ―λ‘ νμ κ°μλ₯Ό 1 μ¦κ°μν¨λ€.
π νμ΅λ°©λ²
μ«μλ₯Ό μλ¦Ώμλλ‘ λλλ λ°©λ²μ νμ΅νκΈ°.
'μ½λ© ν μ€νΈ > Baejoon' μΉ΄ν κ³ λ¦¬μ λ€λ₯Έ κΈ
[λ°±μ€] 11720λ² - μ«μμ ν© (0) | 2021.05.20 |
---|---|
[λ°±μ€] 11564λ² - μμ€ν€ μ½λ (0) | 2021.05.19 |
[λ°±μ€] 4244λ² - νκ· μ λκ² μ§ (0) | 2021.05.14 |
[λ°±μ€] 8958λ² - OXν΄μ¦ (0) | 2021.05.14 |
[λ°±μ€] 1546λ² - νκ· (0) | 2021.05.14 |