온라인저지 144

[BOJ]1735번: 분수 합

1735번: 분수 합 https://www.acmicpc.net/problem/1735 이 문제는 심심풀이로 올려본다.중학교? 이상이면 다 풀 수 있는 문제다. 근데 여기서 기약 분수로 해줘야 하므로, 분모에 있는 값과 분자에 있는 값의 최대 공약수를 구해서 그 수로 나눠주면 기약분수가 된다. 최대 공약수를 구하는 방법은 유클리드 아저씨가 만드신 유클리드 호제법이라는 게 있는데 굉장히 좋당... 유클리드 호제법(위키피디아): https://goo.gl/gsRPhY 링크를 남겨둘 테니, 한번 쭉 읽어보길 바랍니다. 1234567891011121314151617181920#include int gcd(int a, int b) { return b ? gcd(b, a % b) : a; } int main(voi..

온라인저지 2017.08.13

[BOJ]11507번: 카드셋트

11507번: 카드셋트https://www.acmicpc.net/problem/11507 1.하나의 통 문장으로 받을 배열 하나. 2. 카운트 배열 하나.3. 확인용 bool형 2차원 배열 하나 [숫자 개수][모양 개수](#include 필수. C99이후부터 있다) a, b에서 a는 숫자의 10의 자리를 받는 것이고, b는 1의 자리를 받는 것이다.Cc는 'Clone c'이라고 대회 도중이라 대충 썼는데, char c의 정수형을 받는 것이다.(아마 굳이 이렇게 안 해줘도 되긴 할 거다.) 문자열에서 char형인 숫자를 int형으로 바꾸는 방법은 한 자리 수 일때, str[i] - '0'를 해주면 된다. 나머지는 for문을 str의 길이만큼 돌면서 처리해주면 된다. 1234567891011121314151..

온라인저지 2017.08.13

[icpc.me]10798번: 세로읽기 writeup

10798번: 세로읽기 링크 적용 범위 : 문자열! 이 문제는 문자열에 대한 이해도를 높이는 데 좋은 문제 중 하나라고 생각합니다. 문제는 링크를 통해 확인하시길 바랍니다! A A B C D D a f z z 0 9 1 2 1 a 8 E W g 6 P 5 h 3 k x 대충 이런 식으로 존재한다면 Aa0apAf985··· 이렇게 출력을 해주면 되는 굉장히~ 간단하면서도 괜찮은 문제인 것 같습니다! 물론 저는 어려웠습니다... 처음에 힌트를 뭘로 드렸죠?? 맞습니다. 바로 문자열입니다. 저는 배열을 선언할 때 [5][15]의 크기를 갖고 있는 char형 배열을 선언 했습니다. 이렇게 하면 조금 문제 풀기가 쉬워지는 이유가 [5][15]에서 사실 입력되는 값은 15보다 작은 수 있는데 그것은 예외처리를 해주..

온라인저지 2017.07.20