일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
31 |
Tags
- heap
- BFS
- 이진트리
- 연결리스트
- 동적 계획법
- 다이나믹 프로그래밍
- 이진 탐색
- tcache
- 스위핑 알고리즘
- OOB
- syscall
- 에라토스테네스의 체
- off by one
- 포맷스트링버그
- DFS
- RTL
- 큐
- 이분 탐색
- 백트래킹
- 스택
- 분할 정복
- 투 포인터
- 문자열 처리
- ROP
- fsb
- 수학
- 브루트 포스
- 완전 탐색
- House of Orange
- BOF
Archives
- Today
- Total
SDJ( 수돈재 아님 ㅎ )
[C++] 17011 - Cold Compress 본문
문제 링크 : https://www.acmicpc.net/problem/17011
17011번: Cold Compress
Your new cellphone plan charges you for every character you send from your phone. Since you tend to send sequences of symbols in your messages, you have come up with the following compression technique: for each symbol, write down the number of times it ap
www.acmicpc.net
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
31
32
33
34
35
36
37
38
|
#include<iostream>
#include<algorithm>
#include<cstring>
#define endl '\n'
using namespace std;
int main(void)
{
ios_base::sync_with_stdio(false);
cin.tie(NULL);
cout.tie(NULL);
int n;
char *p = NULL;
int q;
char S[81];
cin >> n;
while(n--)
{
cin >> S;
for(p = S+1, q = 1; p < S + strlen(S)+1; ++p, ++q)
{
if(*p != *(p-1))
{
cout << q << ' ' << *(p-1) << ' ';
q = 0;
}
}
cout << endl;
memset(S, 0, sizeof(S));
}
return 0;
}
|
'알고리즘 > Backjoon' 카테고리의 다른 글
[C++] 17013 - Flipper (0) | 2020.01.09 |
---|---|
[C++] 17014 - Pretty Average Primes (0) | 2020.01.09 |
[C++] 2659 - 십자카드 문제 (0) | 2020.01.09 |
[C++] 1074 - Z (0) | 2020.01.09 |
[C++] 1987 - 알파벳 (0) | 2020.01.07 |
Comments