오늘은 뭔가 이상하다..
플래너를 언제부턴가 꾸준히 못써서, 애착을 가지고자 미리 꾸며놓는 편인데
붙이고 싶은 스티커가 다 떨어진건지 꾸미는데에 시들어진건지 오늘따라 쉽지가 않다
괜찮다고 생각한 스티커들을 붙였지만.. 이게 어울리나 싶은 😂
그래도 플래너는 계획 달성률만 높아도 예쁜 플래너가 되니까 오늘은 꾸미는 것보다 계획 달성률 채우는데 더 애써봐야지
새로운 펜을 사야하나 흐음
오늘은 어제 선정문제와 어려운 한문제를 선정해서 풀어볼 생각이다!
하루라도 빨리 30분 이내에 풀 수 있을 구현력을 만드려면 난이도를 올리는게 좋을 것 같았기 때문에 앞으로는 높은 난이도를 꼭 넣을 생각임
📌 4월 3일 선정 문제
2차원 배열 두개를 합치면 되는 문제이길래 arr1
에 arr2
를 그대로 합쳤다
사실 배열 길이 함수가 length
인지 length()
인지 고민했는데
우선 찍었더니 맞았음!
이제 각 메소드에 대한 차이를 정리해야겠다
✅ length vs length() vs size()
- length
- 배열의 길이를 알고자 할때 사용
- [ ]로 선언하는 자료형이면 사용가능 (특별한 자료형)
- length()
- 문자열의 길이를 알고자 할때 사용
- CharSequence 인터페이스를 구현했다면 사용 가능
- size()
- Java 컬렉션 타입의 길이를 알고자 할때 사용
- Collection 인터페이스와 Map 인터페이스에서 선언했다면 사용 가능하다.
진작에 정리할걸 이라는 생각이 들 정도로 간단했다..
이번 기회에 기술 블로그로 medium
계정을 만들어서 작성해보았다.
앞으로도 꾸준히 작성해야지~
medium - Java에서 길이를 재는 메소드들의 차이점
쉬운 난이도에 비해 생각보다 시간이 걸렸던 문제다
그 이유는 시간초과 때문이었는데,
O(N^2+N)
으로 O(N^2)
이 가능할 것이라 생각했었기 때문..
O(100,000^2)
= O(10^10)
이라 당연히 안되는구나..
앞으로는 단위를 10의 n제곱
이라 적어둬야 헷갈리지 않을 것 같음!
우선 그래서 O(NlogN) 복잡도로 줄여서 풀었다.
문제를 보자마자 bfs로 관리하면 되겠다 하고 바로 코드부터 끄적였는데, 영역별 숫자 합계를 구하기 위해서
로 생각했었음
코드적으면서 생각나는대로 1번을 짜다가 중복값이 있을 수 있겠다 싶어 2번으로 수정했다
그 과정에서 복붙을 하다보니 변수명이 꼬여서 마지막에 맞왜틀 하고있었음
결과적으로는
- 다른 테케에서 예상치 못한 결과를 발견할 수 있으므로 가능한 제출해서 맞았다는 확실한 평가를 얻기 전까지 임시로 만든 출력문을 지우지 않는다.
- 바로 코드부터 적는 습관은 그만.
조금이라도 좋으니 큰그림을 끄적이고 접근하자
라는 교훈을 다시금 되새길 수 있었다
"안녕하세요, 99클럽 그룹 리더 맹구입니다!
귀여운 스터디 플래너를 사용하시는 군요!
시간복잡도를 고려하고 메소드를 비교하면서 고찰하시는 부분이 인상적이네요!
앞으로도 힘내서 매일 TIL 도전해 보세요! 화이팅입니다 :)
99클럽 https://bit.ly/3TN5TBL"