https://www.acmicpc.net/problem/15829
λ¬Έμ
APCμ μ¨ κ²μ νμνλ€. λ§μ½ μ¬λ¬λΆμ΄ νκ΅μμ μλ£κ΅¬μ‘°λ₯Ό μκ°νλ€λ©΄ ν΄μ ν¨μμ λν΄ λ°°μ μ κ²μ΄λ€. ν΄μ ν¨μλ μμμ κΈΈμ΄μ μ λ ₯μ λ°μμ κ³ μ λ κΈΈμ΄μ μΆλ ₯μ λ΄λ³΄λ΄λ ν¨μλ‘ μ μνλ€. ν΄μ ν¨μλ 무κΆλ¬΄μ§ν μμ© λΆμΌλ₯Ό κ°λλ°, λνμ μΌλ‘ μλ£μ μ μ₯κ³Ό νμμ μ°μΈλ€.
μ΄ λ¬Έμ μμλ μ¬λ¬λΆμ΄ μμΌλ‘ μ μ©νκ² μΈ μ μλ ν΄μ ν¨μλ₯Ό νλ κ°λ₯΄μ³μ£Όκ³ μ νλ€. λ¨Όμ , νΈμμ μ λ ₯μΌλ‘ λ€μ΄μ€λ λ¬Έμμ΄μλ μλ¬Έ μλ¬Έμ(a, b, ..., z)λ‘λ§ κ΅¬μ±λμ΄μλ€κ³ κ°μ νμ. μμ΄μλ μ΄ 26κ°μ μνλ²³μ΄ μ‘΄μ¬νλ―λ‘ aμλ 1, bμλ 2, cμλ 3, ..., zμλ 26μΌλ‘ κ³ μ ν λ²νΈλ₯Ό λΆμ¬ν μ μλ€. κ²°κ³Όμ μΌλ‘ μ°λ¦¬λ νλμ λ¬Έμμ΄μ μμ΄λ‘ λ³νν μ μλ€. μλ₯Ό λ€μ΄μ λ¬Έμμ΄ "abba"μ μμ΄ 1, 2, 2, 1λ‘ λνλΌ μ μλ€.
ν΄μ κ°μ κ³μ°νκΈ° μν΄μ μ°λ¦¬λ λ¬Έμμ΄ νΉμ μμ΄μ νλμ μ μλ‘ μΉννλ €κ³ νλ€. κ°λ¨νκ²λ μμ΄μ κ°μ λͺ¨λ λν μλ μλ€. ν΄μ ν¨μμ μ μμμ μ νν λ²μμ μΆλ ₯μ κ°μ ΈμΌ νλ€κ³ νμΌλκΉ μ λΉν ν° μ MμΌλ‘ λλ μ£Όμ. μ§μ! ν΄μ ν¨μκ° μμ±λμλ€. μ΄λ₯Ό μμμΌλ‘ νννλ©΄ μλμ κ°λ€.
βH=∑i=0l−1aimodM
βν΄μ ν¨μμ μ λ ₯μΌλ‘ λ€μ΄μ¬ μ μλ λ¬Έμμ΄μ μ’ λ₯λ 무ννμ§λ§ μΆλ ₯ λ²μλ μ ν΄μ Έμλ€. λ€λ€ λΉλκΈ° μ§μ μ리μ λν΄μλ ν λ²μ―€ λ€μ΄λ΄€μ κ²μ΄λ€. κ·Έ μ리μ μνλ©΄ μλ‘ λ€λ₯Έ λ¬Έμμ΄μ΄λλΌλ λμΌν ν΄μ κ°μ κ°μ§ μ μλ€. μ΄λ₯Ό ν΄μ μΆ©λμ΄λΌκ³ νλλ°, μ’μ ν΄μ ν¨μλ μ΅λν μΆ©λμ΄ μ κ² μΌμ΄λμΌ νλ€. μμμ μ μν ν΄μ ν¨μλ μνλ²³μ μμλ§ λ°κΏλ μΆ©λμ΄ μΌμ΄λκΈ° λλ¬Έμ λμ ν΄μ ν¨μμ΄λ€. κ·Έλ¬λκΉ μ‘°κΈ λ κ°μ ν΄λ³΄μ.
μ΄λ»κ² νλ©΄ μμκ° λ¬λΌμ‘μλ μΆλ ₯κ°λ λ¬λΌμ§κ² ν μ μμκΉ? 머리λ₯Ό ꡴리면 μμ΄μ κ° νλ§λ€ κ³ μ ν κ³μλ₯Ό λΆμ¬νλ©΄ λλ€λ μμ΄λμ΄λ₯Ό μκ°ν΄λ³Ό μ μλ€. κ°μ₯ λνμ μΈ λ°©λ²μ νμ λ²νΈμ ν΄λΉνλ λ§νΌ νΉμ ν μ«μλ₯Ό κ±°λμ κ³±ν΄μ κ³±ν΄μ€ λ€μ λνλ κ²μ΄ μλ€. μ΄λ₯Ό μμμΌλ‘ νννλ©΄ μλμ κ°λ€.
βH=∑i=0l−1airimodM
βλ³΄ν΅ rκ³Ό Mμ μλ‘μμΈ μ«μλ‘ μ νλ κ²μ΄ μΌλ°μ μ΄λ€. μ°λ¦¬κ° μ§μ μ νλΌκ³ νλ©΄ νλ€ν λκΉ rμ κ°μ 26λ³΄λ€ ν° μμμΈ 31λ‘ νκ³ Mμ κ°μ 1234567891(λλκ²λ μμμ΄λ€!!)λ‘ νμ.
μ΄μ μ¬λ¬λΆμ΄ ν μΌμ μ μμ ν΅ν΄ μ£Όμ΄μ§ λ¬Έμμ΄μ ν΄μ κ°μ κ³μ°νλ κ²μ΄λ€. κ·Έλ¦¬κ³ μ΄ ν¨μλ κ°λ¨ν΄ 보μ¬λ μμ£Ό μ°μ΄λκΉ κΈ°μ΅ν΄λλ€κ° μ μ¨λ¨Ήλλ‘ νμ.
μ λ ₯
첫 μ€μλ λ¬Έμμ΄μ κΈΈμ΄ Lμ΄ λ€μ΄μ¨λ€. λμ§Έ μ€μλ μλ¬Έ μλ¬Έμλ‘λ§ μ΄λ£¨μ΄μ§ λ¬Έμμ΄μ΄ λ€μ΄μ¨λ€.
μ λ ₯μΌλ‘ μ£Όμ΄μ§λ λ¬Έμμ΄μ λͺ¨λ μνλ²³ μλ¬Έμλ‘λ§ κ΅¬μ±λμ΄ μλ€.
μΆλ ₯
λ¬Έμ μμ μ£Όμ΄μ§ ν΄μν¨μμ μ λ ₯μΌλ‘ μ£Όμ΄μ§ λ¬Έμμ΄μ μ¬μ©ν΄ κ³μ°ν ν΄μ κ°μ μ μλ‘ μΆλ ₯νλ€.
Small (50μ )
- 1 ≤ L ≤ 5
Large (50μ )
- 1 ≤ L ≤ 50
νμ΄
λ¬Έμ κ° μμ² κΈΈκ³ λ³΅μ‘νκΈ΄ νμ§λ§ λ§μ ꡬνμ μ½λ€
λμ .. 100μ λ§μΌλ €κ³ .. λ²μ μ΄κ³Ό μλλ €κ³ ......
mμ λλκ³ λλκ³ λλκ³ λλ΄λ€..
κ·Έλ κ² ν΄λ intλ©΄ μλλ€. long long μ¨μΌν¨
// https://whkakrkr.tistory.com
#include <iostream>
using namespace std;
int main () {
int n;
string s;
cin >> n >> s;
long long ans = 0;
long long r = 1, m = 1234567891;
for(int i=0; i<n; i++) {
ans += ((s[i] - 'a' + 1) * r) % m;
ans %= m;
r *= 31;
r %= m;
}
cout << ans;
return 0;
}
'π Cpp > [Solved.ac] Class2~4' μΉ΄ν κ³ λ¦¬μ λ€λ₯Έ κΈ
[BOJ][C++] λ°±μ€ 1927λ²: μ΅μ ν (0) | 2023.04.11 |
---|---|
[BOJ][C++] λ°±μ€ 11403λ²: κ²½λ‘ μ°ΎκΈ° (0) | 2023.04.10 |
[BOJ][C++] λ°±μ€ 1085λ²: μ§μ¬κ°νμμ νμΆ (0) | 2023.04.06 |
[BOJ][C++] λ°±μ€ 1389λ²: μΌλΉ λ² μ΄μ»¨μ 6λ¨κ³ λ²μΉ (0) | 2023.04.03 |
[BOJ][C++] λ°±μ€ 9375λ²: ν¨μ μ μ ν΄λΉ (0) | 2023.03.31 |