오늘 하루 종일 집에서 알고리즘만 하는 날이었어요! 못해도 진짜 재밌다 알고리즘..ㅎㅎ 그냥 계속 알고리즘만 하고싶어요. 근데 아까 커피살 때 문득 JS도 해야한다는 생각이..ㅠㅠ 아 할거 많아 ㅠㅠ 열심히 살아야지~
👊🏼 알고리즘 공부하기
오늘 LV2문제 10개 정도 푼 것 같아요. 쉬운건 5분걸리는 것도 있지만 어려운 건 1시간 걸린 것도 있어서 하하.. 그래도 다양한 생각을 해볼 수 있는 재밌는 날이었어요~ 다른 사람들 코드 보는 것도 진짜 재밌더라구요.
오늘 푼 문제들을 소개해드릴게요~
1. 카펫문제
간단한 문제였던 것 같아요. 약수를 이용해서 구하면 되는거같아요! 조금 더 좋게하자면 sqrt를 이용해서 효율적으로 약수를 구할 수 있겠네요. 다른 분들중에는 조금더 효율적으로 내부블럭의 약수를 이용해서 역으로 푸시는 분들도 있었어요!
2. 뉴스 클러스터링(카카오)
이 문제는 카카오 문제였어요! 중복원소가 가능한 집합에서 합집합과 교집합을 구하는 방법이 핵심이었어요! 침착하게 배열로 구하면 쉽게 풀 수 있어요! 다른 분들은 그냥 중복제거하고 중복을 다시 카운트하는 엄청난 생각을 하시는 분들도 있었어요.. ㄷㄷ
3. 소수찾기
주어진 문자로 만들수 있는 모든 수 중에서 소수가 몇개인지 찾는 문제였어요. 간단한 문제!
4. 최댓값 최솟값 구하기
너무 쉬워서 후기를 쓸 필요가 없어요..ㅎㅎ
5. 멀쩡한 사각형
최대공약수에서 반복된다는 것을 찾아내는게 관건이였어요! 대각선은 가로와 세로가 같은 비율로 증가하기에 처음으로 꼭지점에서 만날 때는 y값이 | 넓이/공약수 |. 에서 만나게 되는거에요! 최대 몇 번 반복이 되는지 알려면 최대공약수로 나누면 나오겠죠!?
6. 전화번호목록
이 문제 재밌었어요! 문자열로 된 숫자를 sort하면 어떻게 되는지 생각해보면 될 것 같네요! 해시를 이용해서 푸는 것도 기억하면 좋을 것 같아요!
7. 행렬의 곱셈
행렬 그냥 곱셈 구현하면 되는 것 같았어요!
8. 다음큰 숫자
이건 단순 노가다에요~
9. 올바른 괄호
케이스를 잘 나눠서 하면 되는 것 같아요! 가벼운 문제! 이런 문제들이 1번으로 잘 나오는 것 같아요!
10. 가장 큰 정사각형 찾기
브루트 포스인가 완전 탐색으로 풀었는데 지금 효율성에서 아작 났어요..ㅠㅠ 내일 가로행 DP 생각을 해보려구요~