1157번 - 단어 공부
result 배열은 인덱스 0 ~ 25가 각각 a ~ z를 의미하고
그 인덱스의 값은 해당 알파벳이 반복된 횟수를 저장하도록 하고 싶어서
a의 유니코드 97 ---> 인덱스 0
b의 유니코드 98 ---> 인덱스 1
이렇게 만들려고 input을 모두 소문자로 바꾼 뒤에
입력으로 들어온 단어의 각 글자 input[i] 의 유니코드 값에 빼기 97을 해서 나온 수를
result배열의 인덱스로 사용해서 그 값을 1씩 증가시켜주었습니다.
그런 다음 result 배열에서 최대값 (max 변수) 을 구한 후
그 값을 가진 인덱스 (0 이면 A, 1이면 B, 2이면 C) 를 찾기 위해서 result.indexOf(max) 를 했고
그렇게 해서 나온 인덱스가 만약 3이라 치면 result.indexOf(max, 3) 을 해서 인덱스 3이후에 max값을 갖는 인덱스가 또 있는지 없는지 검사해서
있으면 "?" 출력, 없으면 3번줄 대문자 알파벳 문자열의 인덱스값을 출력하게 했습니다
반례나 구현에서 틀린 점이 있다면 알려주시면 매우매우 감사하겠습니다 ㅜㅡㅜ
얏 코드로 알려드립니다.
댓글을 작성하려면 로그인해야 합니다.
tidzmtm12 2년 전
result 배열은 인덱스 0 ~ 25가 각각 a ~ z를 의미하고
그 인덱스의 값은 해당 알파벳이 반복된 횟수를 저장하도록 하고 싶어서
a의 유니코드 97 ---> 인덱스 0
b의 유니코드 98 ---> 인덱스 1
이렇게 만들려고 input을 모두 소문자로 바꾼 뒤에
입력으로 들어온 단어의 각 글자 input[i] 의 유니코드 값에 빼기 97을 해서 나온 수를
result배열의 인덱스로 사용해서 그 값을 1씩 증가시켜주었습니다.
그런 다음 result 배열에서 최대값 (max 변수) 을 구한 후
그 값을 가진 인덱스 (0 이면 A, 1이면 B, 2이면 C) 를 찾기 위해서 result.indexOf(max) 를 했고
그렇게 해서 나온 인덱스가 만약 3이라 치면 result.indexOf(max, 3) 을 해서 인덱스 3이후에 max값을 갖는 인덱스가 또 있는지 없는지 검사해서
있으면 "?" 출력, 없으면 3번줄 대문자 알파벳 문자열의 인덱스값을 출력하게 했습니다
반례나 구현에서 틀린 점이 있다면 알려주시면 매우매우 감사하겠습니다 ㅜㅡㅜ