진법과의 관련성을 고민해보았지만, 쉽지 않을 거라는 생각에 규칙을 먼저 찾게 되었다.규칙은 제곱을 여러번 반복했을 때, 1의 자리는 일정하게 나타난다.계속 같은 수를 반복하는 경우도 있었고, 두번, 네번 반복하는 규칙이 있었다.하나 하나 케이스를 나누기보다는 몇번의 반
level 1 로또의 최고 순위와 최저 순위이중반복문을 안쓰고 스트림을 사용하려고 해보았다. 이중스트림으로 처리할 수도 있었고, 0을 찾을 때도 스트림을 사용할 수 있었지만, 조금은 더 알아보기 쉽게 코드를 작성하고 싶었다. (마음같이 쉽지 않음,메서드명도 돌아보면 제
level1 숫자 문자열과 영단어알고리즘 공부를 하면서 메서드를 쪼개고, 테스트를 작성해보는 연습을 많이 해보려고 한다. 또한 else를 절대 쓰지않고, 들여쓰기를 최소화하는 노력을 하고있다.머릿속에서 그림이 잘 안그려지면, 일단 구현해보자 하는 때가 더 많기는 하지만
level1 신규 아이디 추천String.replaceAll 메서드로 정규식을 조합하면 쉽게 풀 수 있는 문제이다. 문제는 객체를 사용하지 않은채로 스태틱 메서드로 하나하나 구현하고 보니 아래와 같은 상황이 벌어졌다. 어찌되었든 각 메서드의 오류는 없었기때문에, 모든
Two Sum문제의 숫자 범위 조건을 확인하지 않고서 반복 횟수를 조금이라도 줄이기 위해서 배열의 숫자가 target 보다 큰 경우 continue하도록 조건을 만들었었다.하지만 음수가 나올 수 있었고, 그러한 조건을 삭제했다.leetcode에서는 실패한 테스트케이스를
프로그래머스 신고 결과
프로그래머스크레인 인형 뽑기모의고사이상한 문자 만들기단순히 toUpperCase(), toLowerCase()를 사용하려다가 아스키코드를 통한 변환을 직접해보고 싶어졌다.굉장히 간편하게 풀이할 수 있는 문제였지만, 직접 변환하다보니 메서드가 많이 추가되었다.K번째수Ar
프로그래머스 키패드 누르기 객체를 만들고, 2차배열로 키패드를 구현해서 풀이했다. 다른 사람의 풀이는 숫자를 인덱스로 보고, 숫자의 위치를 2차 배열로 넣어주었다. 반복문을 통해서 위치를 찾아내는 내 코드보다 더 효율적인 방법이다. 문제 그대로 틀에 박혀서 구현하기
프로그래머스 - 실패율
프로그래머스_비밀지도 비트연산으로 문제를 해결했다. 다른 사람의 풀이를 보면, Integer.toBinaryString메서드를 통해서 이진수로 변환해서 숫자를 기호로 변경시키는 방법으로 풀이했다. 풀이 하면서 숫자를 이진법으로 변환했을 때, 지도의 칸 수의 범위보다
메서드를 분리하면서 불필요한 메서드가 생긴 점이 아쉽다.다른 사람의 풀이에는 스택을 이용해서 점수를 계산할 수 있게한 사람들이 많았다.
반복이후에 나머지 문자열을 넣어주는 것을 생각못해서 시간이 많이 걸린 문제다.반복문을 만들때, 변수(i,j)를 요구사항에 맞춰서 넣는 연습이 많이 된 것 같다.디버깅하면서 조건문을 많이 수정했다.반복에서 여러가지 조건이 들어갈때, 작은 단위의 메서드부터 설계하기가 쉽지
프로그래머스_오픈채팅방 아이디와 닉네임을 가지는 User클래스를 만들어서 처리하고 싶었으나, 테스트케이스 몇개에서 시간초과가 났다. 닉네임을 바꾸는 경우(Change 커맨드 또는 나갔다가 새로운 닉네임으로 접속)에서 접속을 했었던 유저인지, 확인하고 닉네임을 바꾸는