16강~20강

원래벌레·2022년 3월 29일
0

16강

접근법 :

  • 아나그램이란? : 두 문자열이 있다면 두 문자열을 이루는 문자가 같은 경우이다. 아나그램에서 두 문자열을 이루는 문자의 순서는 상관없다.

  • 이 문제를 접근 하는 가장 좋은 방법은 해싱기법이다.

  • 풀이 : A~z까지 문자가 들어 갈 수 있는 크기의 배열 a[53]을 선언한다. 이 배열의 인덱스는 A=1 ~ z=52 일 것이다. 이제 입력받은 문자열의 문자를 하나 하나 읽으면서 해당 값이 대문자일경우에는 해당 값에서 -64를 한다. 그리고 소문자인 경우에는 -70을 해준다. 그리고 해당 인덱스의 값을 ++ 해준다.
    이것과 똑같이. b[53]도 해준다. 그리고 a와 b를 비교한다.

cf) algorithm 라이브러리에 있는 exit() 함수 : 프로그램을 종료시킨다.


19강

접근법 :

  • 배열에 있는 맨 뒤의 숫자에서 부터 앞으로 가면서 max를 찾는 문제이다.

  • 분노유발자 : 뒷사람보다 키가 커서 앞을 못보게 하는 사람
    이러한 사람들을 구하기 위해서는 자신의 인덱스 뒤쪽에 있는 수들보다 커야한다.
    이말은즉슨 뒤에 있는 인덱스들의 max값보다 현재 인덱스 값이 커야한다.
    따라서 해당 문제는 max를 뒤에 두고 앞으로 나가면서 max 값이 변하는 지만을 파악하면 되는 문제이다.


20강

접근법 :

가위바위보 문제는
1) 무승부를 먼저 걸러낸다.
2) 한 쪽이 이기는 경우에 대하여 else if문을 적는다.
3) 나머지 한 쪽이 이기는 경우는 else 처리한다.


profile
학습한 내용을 담은 블로그 입니다.

0개의 댓글