티스토리 뷰
http://icpc.me/10545
문제
일반적인 2G 휴대폰의 키패드에서, 각각의 키패드가 다르게 작동한다.
a를 누르면 b가, b를 누르면 c가... 이렇게 진행 될떄
주어진 문자열을 만들기 위해선 어떤 키패드를 몇번 눌러야하는지 출력하라.
풀이
단순 구현
노가다
이하 생략
코드
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 | #include <bits/stdc++.h> using namespace std; int cnt[27],press[27]; int key[10]; int main() { cnt[0]=cnt[3]=cnt[6]=cnt[9]=cnt[12]=cnt[15]=cnt[19]=cnt[22]=1; cnt[1]=cnt[4]=cnt[7]=cnt[10]=cnt[13]=cnt[16]=cnt[20]=cnt[23]=2; cnt[2]=cnt[5]=cnt[8]=cnt[11]=cnt[14]=cnt[17]=cnt[21]=cnt[24]=3; cnt[18]=cnt[25]=4; press[0]=press[1]=press[2]=2; press[3]=press[4]=press[5]=3; press[6]=press[7]=press[8]=4; press[9]=press[10]=press[11]=5; press[12]=press[13]=press[14]=6; press[15]=press[16]=press[17]=press[18]=7; press[19]=press[20]=press[21]=8; press[22]=press[23]=press[24]=press[25]=9; for(int i=1,x;i<=9;i++) scanf("%d",&x),key[x]=i; int before=-1; string s; cin>>s; for(int i=0;i<s.size();i++) { int ch=s[i]-'a'; if(key[press[ch]]==before) printf("#"); for(int i=0;i<cnt[ch];i++) printf("%d",key[press[ch]]); before=key[press[ch]]; } return 0; } | cs |
'백준' 카테고리의 다른 글
[ BOJ 10818 ] 최대,최소 (0) | 2018.07.23 |
---|---|
[ BOJ 2143 ] 두배열의 합 (0) | 2018.07.23 |
[ BOJ 10571 ] 다이아몬드 (0) | 2018.07.23 |
[ BOJ 1280 ] 나무 심기 (0) | 2018.07.23 |
[ BOJ 2508 ] 사탕 박사 고창영 (0) | 2018.07.23 |
댓글
최근에 올라온 글
공지사항
- Total
- Today
- Yesterday
최근에 달린 댓글
링크
TAG
- 연습문제
- 선형대수학
- 해석학
- Backprop
- Deep learning
- 해석학II
- PMA
- 로피탈
- 세그먼트 트리
- PMA 연습문제
- PMA Ch5
- Derivate
- Trace trick
- mathematics
- Machine Learning
- icpc.me/17411
- Differentation
- 해석학 Chapter 5
- Trace tirck
- LInear SVM
- 수학
- 수(상)
- 백준
- JOI 2021
- cs231n assignment1
- 17411
- 해석학 Ch5
- 미분
- 백준 17411
- joi
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
글 보관함