-
2941번 : 크로아티아 알파벳 : 숏코딩버젼알고리즘/백준(acmicpc.net) 문제풀이 2018. 6. 14. 16:10반응형
조건 하나하나 설정하기 너무 귀찮아서 숏코딩을 목표로 짰습니다.
두가지 방법을 생각해 봤습니다.
1. 배열에 미리 문자열을 넣어놓는 방법
2. define을 이용하는 방법
1번째 방법은 너무 정석적이라 2번째 방법을 택했습니다.
MAX(a,b) 이런게 필요할 때 저는 주로
#define MAX(a,b) (a)>(b)?(a):(b)
이렇게 쓰고 시작합니다.
여기에서 영감을 얻어서 많이 반복되는 "arr[i]==문자 && arr[i+1]==문자" 이런 것들을 줄이고자 했습니다.
결국 완성된 것은
#define c(c,d) a[i]==(c)&&a[i+1]==(d)
이것입니다.
c(c,d)는 매크로이며 함수처럼 쓸 수 있습니다.
a[i]는 배열을 의미하고 (c)와 (d)는 대입된 인자를 쓸 수 있습니다.
결국 맞은 사람 순위 12위에 이름을 올릴 수 있었답니다~!
반응형'알고리즘 > 백준(acmicpc.net) 문제풀이' 카테고리의 다른 글
1436번 : 영화감독 숌 (0) 2018.06.18 1107번 : 리모컨 (0) 2018.06.17 11365번 : !밀비 급일 (0) 2018.06.14 2675번 : 문자열 반복 (0) 2018.06.14 11048번 : 이동하기 (0) 2018.06.08