오늘도 꾸준하게 하는 알고리즘 공부~
16강 Anagram (아나그램 : 구글 인터뷰 문제)
문제 : Anagram이란 두 문자열이 알파벳의 나열 순서가 다르지만 구성이 일치하면 같은 단어를 말한다. 애너그램이 맞는지 아닌지를 출력하는 프로그램을 짜라!
Key Point : 나는 여기서 a~z, A~Z를 배열로 생각하고 그 해당 문자가 나오면 해당 문자의 부분을 ++하는 형식으로 했다.
1 |
|
17강. 선생님 퀴즈
현수네 반은 학생이 N명 있다. 수업도중 선생님이 잠깐 자리를 비워야 하는데 그동안 학생들이 떠들거나 놀지 않도록 각 학생들에게 퀴즈를 냈다. 선생님은 각 학생들에게 숫자가 적힌 카드를 줬는데, 각 학생들은 1부터 자기 카드에 적힌 숫자까지의 합을 구하는 퀴즈다.
첫줄에 반 학생수인 자연수 N이 주어진다. 두번째 줄부터는 1번 학생부터의 카드에 적힌 수와 학생이 구한 정답이 공백을 사이에 두고 입력된다.
1 |
|
그냥 1부터 N까지의 합을 구하는 수학 공식을 사용하면 매우 쉽다!
18강. 층간소음
T편한 세상 아파트는 층간소음 발생시 윗집의 발뺌을 방지하기 위해 애초에 아파트를 지을 때 바닥에 진동센서를 설치했다. 이 센서는 각 세대의 층간 진동 소음 측정치를 초단위로 아파트 관리실에 실시간으로 전송한다. 한 세대의 측정치가 M값을 넘으면 세대 호수와 작은 경보음이 관리실 모니터에서 울린다. 한 세대의 N초동안의 실시간 측정치가 주어지면 최대 연속으로 경보음이 울린시간을 구하세요. 경보음이 없으면 -1이 출력된다.
입력
첫번째 줄에는 자연수 N과 M이 주어짐 두번째 줄에는 N개의 측정치값이 초 순서대로 입력된다.
1 |
|
껌이군 후후후후
19. 분노 유발자
한줄에 앉은키 정보가 주어지면 뒷사람 모두의 시야를 가리는 사람이 몇명 있는지 출력하는 프로그램
입력 첫 줄에 앉은 학생수 N이 주어짐 두번째 줄에 N명의 앉은키 정보가 앞자리 학생부터 차례대로 주어진다.
1 |
|
여기서 포인트는 flag
와 st.size()-1
부분이었다. 반복문을 한번 더 잘 생각해줘야 했던 문제!!
20. 가위 바위 보
A, B 두사람이 가위바위보를 한다. A가 이기면 A를 출력, B가 이기면 B를 출력하고 비기면 D를 출력한다.
입력 첫번째 줄에는 게임 횟수 N를 입력. 두번째 줄에는 A가 낸 가위, 바위, 보 정보 N개가 주어짐. 세번재 줄에는 B가 낸 가위, 바위, 보 정보 N개가 주어짐.
1 |
|
껌이라능 선생님은 어떻게 푸셨으려나?