문제첫번째 제출한답접근방식 -> 1대를 판매할때마다 총비용에 가변비용을 누적,영업이익에 판매가를 누적, 판매대수를 1씩 증가시켜서 영업이익이 총비용보다 커질때까지 반복시킴결과->시간초과문제점-> 직접 반복문 돌리면서 계산하니 반복횟수가 커졌을때 제한시간인 0.35초를
첫번째 제출한답접근 -> 해당문자의 첫 출현위치를 구하려면 indexOf() 를 사용해야함for문을 쉽게 돌리기 위해서 a~z의 아스키코드(97~122)로 indexOf를 돌림결과-> 정답총풀이시간 10분
첫번째 제출한답접근 -> 달팽이가 정상에 올라가기 전날의 위치(finalLoc = v-a) 까지 도달하는 일수(finalLoc/c)를 구한뒤 1을 더해줌Math.ceil 사용한 이유 -> 일수는 소수로 처리할수 없음ex ) a= 5 b= 1 v=6일때 finalLoc/
첫번째 제출한 답접근방식 -> 공백문자 기준으로 split 한뒤 0번째 인덱스는 r 1번째 인덱스는 str로 할당 그 후 2중 for문으로 1번째 인덱스의 값을 charAt로 한개씩 쪼개서 r번 반복하여 출력결과 -> 정답특이사항 -> int r= 0; 아래에 sc.n
첫번째 제출한 답접근방식 \-> n%h는 손님이 배정될 방번호의 층수(YY)를 의미 n%h==0일때는 따로 처리해준다 ex) n = 12 h = 10 일때 n%h 는 2이다 -> 손님은 2층에 배정ex) n = 20 h = 10 일때 손님은 10층에 배정되어야 하지만
첫번째 제출한 답접근방식 -> 가장 길이가 긴 변의 길이의 제곱이 나머지 두 변의 제곱의 합과 같으면 직각삼각형이기때문에 Arrays.sort 로 오름차순 정렬한뒤계산한다.결과 -> 정답
첫번째로 제출한 답접근방식 -> 일곱난쟁이의 키의 합이 = 100이기 때문에 아홉난쟁이의 키의 합 - 가짜난쟁이 2명의 키 = 100 이다 이중 for문으로 전체를 조회하며 sum-list_h.get(i)-list_h.get(j)==100 인경우 i번째 난쟁이와 j번째
첫번째 제출한답접근방식 -> 10개짜리 int 배열을 만들고 abc 를 문자열로 변환한뒤 for문과 charAt()으로 하나하나씩 체크하고 처리한다 해당 인덱스의 문자가 숫자일경우 앞서 만든 10개짜리 배열에 해당 인덱스의 값을 1씩 증가시킨다. ex) str = "1
첫번째 제출한답접근방식-> "pi" "ka" "chu"를 모두 ""로 교체한뒤 반복문을돌려 의 갯수를 체크하고 \*의 갯수와 문자열의 길이가 같으면 "YES" 다르면 "NO" 출력결과 -> 정답
첫번째 제출한답접근방식 1.입력받은 값의 배열(찍으려고하는 사람수)의 최댓값(max)과 해당 인덱스(maxIndex)를 구하고 반복문을 돌린다 2.maxIndex가 다솜이라면(maxIndex==0) 반복문을 종료시키고 아니라면 else 문(매수 =>최고득표자표--
첫번째 제출한답접근방식 -> 유클리드 호제법을 사용하여 최대공약수를 구하고최소공배수 (두수의곱/최대공약수)를 구한다.결과 -> 정답참고문서 = 위키백과
첫번째 제출한 답접근방식 -> 3개의 비밀번호 조건을 검사하는 메소드(return boolean)를 만들어서 3개가 모두 true 일때, 아닐때 나눠서 결과출력1\. 모음(a,e,i,o,u) 하나를 반드시 포함하여야 한다. -> f1()모든 모음을 포함하는 char\
첫번째 제출한답접근방식 -> 무한 반복으로 i를 1씩증가시킴 > i를 문자열로 바꾼값에 "666"이 포함되어있으면 cnt를 증가시킴(cnt는 숌의 N번째 영화라는 의미를 가지게 된다.) > 입력받는 cnt와 n이 같다면 반복문을 종료시키고 i를 출력결과-> 정답
첫번째 제출한답접근방식 -> 2중반복문으로 수열을 만들고 a~b번째의 문자를 숫자로바꿔서 총합을 구한다.결과 -> 메모리초과 To be Continue...
첫번째 제출한 답접근방식 -> 각 사람의 좌표에서 계산한 적의 위치들을 선으로 연결했을때 반지름이 각각 r1,r2인 원이 되고 즉 적이 있을수 있는 위치는 두 원이 만나는 점의 수이다. 즉 두원이 만나는 조건에 따라 값을 나눠서 출력한다.결과 -> 오답문제점 -> 테스
\-> 단어의 길이만큼 for문(j)을 돌리고 첫번째에 나온 문자를 모두 ""로 교체한뒤 단어의 길이 만큼 for문(k)을 한번더 돌린다.\-> j반복문에서 cnt의 초기값을 1로주었고 k반복문에서 k번째 문자가 ""이면 cnt = 1 아니면 0으로 바꿔준다\->만약
접근방식 -> 정답이 담길 char\[] 을 정의하고 입력받는 문자열을 w개씩 잘라서 잘린 문자열에 '?'가 아닌 문자를 char\[]에 담는다 '?'만 나왔으면 '?'를 담는다 여기서 if문은 정답 문자가 char\[]에 담겼는데 다음 입력에 ?가 담기는 경우를 막아
접근 방식-> M~N까지의 문자열의 배열을 만들고(두자리일때,한자리일때 나눠서) Arrays.sort로 정렬시킨다.정렬된 문자열 배열을 다시 조건에 맞춰 숫자로 바꾸고 결과배열에 담아서 출력한다
접근방식 -> String.replaceFirst를 사용하여 문자열에서 제일 처음만난 "()"를 빈문자열로 치환하고 이 과정을 문자열이 "()"를 포함하지 않을때까지 반복시킨다위 반복에서 모든 문자열이 치환되었을 경우(input.length()==0) "YES"출력아닐
접근방식 -> 먼저 ( )와 를 제외한 문자열을 새로만들고해당문자열을 ( )과 가 모두 포함되어 있지 않을때 까지 ( )와 를 제거시킨다. 반복이 끝났으면 str의 길이가 0일때는 yes 아니면 no 출력
접근방식 -> String.replace() 로 XXXX는 AAAA XX는 BB로 바꾼뒤 문자열이 X를 포함하고 있으면 -1 아니면 문자열을 출력한다.
접근 방식 -> arr_num에 입력받은 문자열.charAt() 를 사용해 해당 숫자가 몇번 쓰였는지 카운트한다 >> 6과 9는 뒤집어서 사용할수 있기때문에 만약 6이 더 많이 쓰였다면 9가 6보다 크거나 같을때까지 6을 하나빼고 9를 하나 더하는 코드를 반복한다 (9