μΌ | μ | ν | μ | λͺ© | κΈ | ν |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- μ°μ μμν
- DFS
- db
- λ¨Έμ§μνΈ
- λμ ν©
- λμ κ³νλ²
- μκ³ λ¦¬μ¦
- κ·Έλννμ
- κ·Έλν
- μμꡬνκΈ°
- λ€μ΄λλ―Ήνλ‘κ·Έλλ°
- ν°μ€ν 리μ±λ¦°μ§
- μ λ ¬
- BFS
- μ€λΈμ
- LIS
- 그리λ
- SQL
- νμ΄μ¬
- μλ£κ΅¬μ‘°
- κΉμ΄μ°μ νμ
- λλΉμ°μ νμ
- μν
- λ³ν©μ λ ¬
- λ°μ΄ν°λ² μ΄μ€
- νλ‘κ·Έλλ¨Έμ€
- ꡬν
- DP
- λ°±μ€
- μμνμ
πππ°πΈ π£πΆπ΅ π΄π΅π¦π’π₯πΊ
[λ°±μ€] 2840λ²: νμ΄μ λ°ν΄ - C++ λ³Έλ¬Έ
λ¬Έμ
μλμ΄λ μ΅κ·Όμ νμ΄μ λ°ν΄λ₯Ό ꡬ맀νλ€. μλμ΄λ λ°ν΄μ κ° μΉΈμ μνλ²³ λλ¬Έμλ₯Ό μλ κ·Έλ¦Όκ³Ό κ°μ΄ μ μλ€.
λ°ν΄μ κ°μ κΈμλ λ λ² μ΄μ λ±μ₯νμ§ μλλ€. λ, λ°ν΄λ μκ³λ°©ν₯μΌλ‘λ§ λμκ°λ€. λ°ν΄ μμλ νμ΄νκ° μλλ°, μ΄ νμ΄νλ νμ ν κ³³μ κ°λ¦¬ν€κ³ μμΌλ©°, λμκ°λ λμ κ°λ¦¬ν€λ κΈμλ λ°λκ² λλ€. μμ κ·Έλ¦Όμμλ Hλ₯Ό κ°λ¦¬ν€κ³ μλ€.
μλμ΄λ λ°ν΄λ₯Ό μ°μν΄μ Kλ² λ릴 κ²μ΄λ€. λ§€λ² λ°ν΄λ₯Ό λ릴 λ λ§λ€, μλμ΄λ νμ΄νκ° κ°λ¦¬ν€λ κΈμκ° λ³νλ νμμ μ΄λ€ κΈμμμ νμ μ λ©μΆμλμ§λ₯Ό μ’ μ΄μ μ λλ€.
ν¬μμ΄λ μλμ΄κ° μ μ΄λμ μ’ μ΄λ₯Ό λ°κ²¬νλ€. κ·Έ μ’ μ΄λ₯Ό λ°νμΌλ‘ μλμ΄κ° λ°ν΄μ μ μ μνλ²³μ μμλ΄λ €κ³ νλ€.
μλμ΄κ° μ’ μ΄μ μ μ΄λμ λ΄μ©κ³Ό λ°ν΄μ μΉΈμ μκ° μ£Όμ΄μ‘μ λ, λ°ν΄μ μ μ΄λμ μνλ²³μ μμλ΄λ νλ‘κ·Έλ¨μ μμ±νμμ€.
μ λ ₯
첫째 μ€μ λ°ν΄μ μΉΈμ μ Nκ³Ό μλμ΄κ° λ°ν΄λ₯Ό λ리λ νμ Kκ° μ£Όμ΄μ§λ€. (2 ≤ N ≤ 25, 1 ≤ K ≤ 100)
λ€μ μ€λΆν° Kμ€μλ λ°ν΄λ₯Ό νμ μμΌ°μ λ νμ΄νκ° κ°λ¦¬ν€λ κΈμκ° λͺ λ² λ°λμλμ§λ₯Ό λνλ΄λ Sμ νμ μ λ©μΆμμ λ κ°λ¦¬ν€λ κΈμκ° μ£Όμ΄μ§λ€. (1 ≤ S ≤ 100)
μΆλ ₯
첫째 μ€μ λ§μ§λ§ νμ μμ νμ΄νκ° κ°λ¦¬ν€λ λ¬ΈμλΆν° μκ³λ°©ν₯μΌλ‘ λ°ν΄μ μ μ΄λμ μνλ²³μ μΆλ ₯νλ€. μ΄λ, μ΄λ€ κΈμμΈμ§ κ²°μ νμ§ λͺ»νλ μΉΈμ '?'λ₯Ό μΆλ ₯νλ€. λ§μ½, μλμ΄κ° μ μ΄λμ μ’ μ΄μ ν΄λΉνλ νμ΄μ λ°ν΄κ° μλ€λ©΄ "!"λ₯Ό μΆλ ₯νλ€.
μ λ₯Ό λ§μ΄ λ¨Ήμλ λ¬Έμ ...
λ¬Έμ ν΄μμ΄ μ΄λ ΅κΈ°λ νκ³ μμΈμ²λ¦¬ μ‘°κ±΄μ΄ λΉ‘μ λ€.
λλ¦μ λ Όλ¦¬λ‘ νμλ λ΅μμ΄ μμλλ°, λͺ¨λ μμΈμ²λ¦¬λ₯Ό ν΄μ€¬μμλ μ΄λ€ κ²½μ°μμ 걸리λμ§ λ°λ‘λ₯Ό λͺ»μ°Ύμμ κ²°κ΅ μ μΆμ ꡬκΈλ§ν΄μ μ°Έκ³ ν λ΅μμΌλ‘ νλ€.
μκ°ν΄μ€μΌ νλ κ²½μ°λ λ€μκ³Ό κ°λ€.
- μλ‘ λ€μ΄κ°μΌ ν μΉΈμ κ°μ λ¬Έμ λλ ?μ΄ μλ λ€λ₯Έ λ¬Έμκ° λ€μ΄κ°μλ κ²½μ°
- μ€λ³΅λ λ¬Έμκ° κ°μ μΉΈμ΄ μλ λ€λ₯Έ μΉΈμ λ€μ΄μλ κ²½μ°
κ°μ₯ λ§μ§λ§ λ¬Έμλ₯Ό κΈ°μ€μΌλ‘ μΆλ ₯νλ κ²μ΄κΈ° λλ¬Έμ μ΄μλ§ λ μ μν΄μ£Όλ©΄ λλ€.
#include <cstdio>
#include <cstring>
#include <vector>
#define MAX 26
using namespace std;
vector<pair<int, char> > roulette;
int main(void) {
int N, K;
scanf("%d %d", &N, &K);
roulette.resize(K);
for(int i = 0; i < K; i++) {
scanf("%d %c", &roulette[i].first, &roulette[i].second);
}
char wheel[MAX];
memset(wheel, '?', MAX);
int alphabet[26] = { 0 }; // μ€λ³΅μ± 체ν¬μ©
wheel[0] = roulette[K - 1].second;
int pos = 0;
for(int i = K - 2; i >= 0; i--) {
int index = (pos + roulette[i + 1].first) % N;
if(wheel[index] != roulette[i].second && wheel[index] != '?') {
printf("!\n");
return 0;
}
wheel[index] = roulette[i].second;
pos = index;
}
for(int i = 0; i < N; i++) { // κ°μ κΈμ λ λ² μ΄μ λ±μ₯νλμ§ κ²μ¬
alphabet[wheel[i] - 'A']++;
if(alphabet[wheel[i] - 'A'] > 1 && wheel[i] != '?') {
printf("!\n");
return 0;
}
}
for(int i = 0; i < N; i++) {
printf("%c", wheel[i]);
}
printf("\n");
return 0;
}
μ½λ
#include <cstdio>
#include <cstring>
#define MAX 25
int main(void) {
int N, K;
scanf("%d %d", &N, &K);
char roulette[MAX];
memset(roulette, '?', MAX);
int index = 0;
for(int i = 0; i < K; i++) {
int pos;
char c;
scanf("%d %c", &pos, &c);
pos %= N;
if(index - pos < 0) index = index - pos + N;
else index -= pos;
if(roulette[index] != c && roulette[index] != '?') {
printf("!\n");
return 0;
}
roulette[index] = c;
}
for(int i = 0; i < N; i++) {
for(int j = i + 1; j < N; j++) {
if(roulette[i] != '?' && roulette[i] == roulette[j]) {
printf("!\n");
return 0;
}
}
}
for(int i = 0; i < N; i++) { // λ§μ§λ§ indexλΆν° μμ
printf("%c", roulette[(i + index) % N]);
}
printf("\n");
return 0;
}
'μ½λ©ν μ€νΈ μ€λΉ > λ°±μ€' μΉ΄ν κ³ λ¦¬μ λ€λ₯Έ κΈ
[λ°±μ€] 3024λ²: λ§λΌν€ ν±νν - C++ (0) | 2022.01.17 |
---|---|
[λ°±μ€] 1756λ²: νΌμ κ΅½κΈ° - C++ (0) | 2022.01.14 |
[λ°±μ€] 5624λ²: μ’μ μ - C++ (0) | 2022.01.12 |
[λ°±μ€] 1991λ²: νΈλ¦¬ μν - C++ (0) | 2022.01.05 |
[λ°±μ€] 2178λ²: λ―Έλ‘ νμ - C++ (0) | 2022.01.04 |