Engineering Note

13. 가장 많이 사용된 자릿수 본문

Problem Solving/Olympiad in Informatics

13. 가장 많이 사용된 자릿수

Software Engineer Kim 2021. 1. 24. 20:24

it 취업을 위한 알고리즘 문제풀이

문제

코드

문제해결방법

  • 자연수 입력 할때 100자리수 이므로 100번째 자리수는 10의 99승 이므로 정수형으로 받을 수 없기 때문에 문자열로 각각의 숫자문자를 받아야한다.
  • "%s" 서식문자를 사용해 입력된 숫자를 문자형태로 받아서 배열에 저장
  • 컴퓨터는 0과 1숫자만 표시가능, C언어에서 모든 문자는 그에 대응되는 숫자를 같는다. '0'문자는 48이라는 숫자가 2진수 형태로 저장된다.
  • 이때 실제 수에 해당하는 값으로 나타내기 위해서는 (해당문자-48)을 해야 숫자로 나타낸다.
  • 실제 0 숫자는 '\0'(NULL)문자를 나타낸다.
  • (문자-48)을 만들어서 해당 숫자를 만들고 digit배열에 해당숫자에 해당하는 인덱스에 값을 증가시킨다.(초기값은 0)
  • digit배열에서 max값에 해당하는 값을 찾고 해당 인덱스를 저장(이때 같은 값일 때 큰 값을 채택해야 함으로 부등호에서 등호를 주의해야한다., 같은 값이 나왔을 경우에도 조건문에서 인덱스값을 채택할 수 있도록)

'Problem Solving > Olympiad in Informatics' 카테고리의 다른 글

15. 소수의 개수  (0) 2021.01.28
14. 뒤집은 소수  (0) 2021.01.26
57. 재귀함수 이진수 출력  (0) 2021.01.22
34. 버블정렬  (0) 2021.01.21
39. 두 배열 합치기  (0) 2021.01.21
Comments