전체 글 62

[Java/코딩테스트] 서울에서 김서방 찾기

안녕하세요!오늘도 코딩테스트 문제를 가져왔습니다.   문제를 풀려고 생각해 보다 보니 answer라는 문자열 변수는 필요가 없을 것같아서 지운 상태에서 시도를 해보았다. 왜 index값이 0이 나왔지?라는 의문이 들었고,내가 짠 코드를 자세히 살펴보니 문자열을 비교할 때는 "=="연산자를 사용하면 안되는데 실수했다.왜냐면, "=="연산자는 "주소값"을 비교할 때 사용하기 때문이다. cf )      == 연산자객체의 주소를 비교하여 일치하는 확인할 때 사용        equals() 메서드객체의 내용을 비교하여 같은지 확인할 때 사용  오늘의 요약내용을 비교 하고 싶다 → equals()주소값을 비교 하고 싶다 → 비교 연산자

[Java/코딩테스트] 콜라츠 추측

안녕하세요!오늘도 코딩테스트 문제를 가져왔습니다.   일단, 마음가는대로 코드를 작성하고는 테스트 했습니다.ㅎㅎ 그랬더니, 테스트3이 통과되지 못하였고문제를 다시 보니 놓친 부분이 있었습니다.실행한 결괏값 488이 걸려서 곰곰히 생각해보니 지금 int정수형이지만입출력 예시 3번과 같이 큰 수들이 while문 돌면서 int의 최댓값을 넘어버릴것 같다는 생각이 들어long으로 형변환을 시켜주었습니다. 그리고, int answer가 선언되어있는데 굳이 count를 선언해서 복잡했던 코드들도 수정하였습니다.   오늘의 요약굳이 선언하여 코드를 복잡하게 만드는 코드가 없는지 한번 더 생각해 보자.

[Java/코딩테스트] 하샤드 수 판별

안녕하세요!오늘 풀어본 코딩테스트에 대해 다뤄보도록 하겠습니다.  일단, 이 문제를 풀기 전에 알아야 될 수학적 용어를 정리하고 풀어야 합니다.(입출력 예시 보고도 충분히 풀이가 가능하긴 하지만, 궁금하니깐..!!) 하샤드 수주어진 진법에서 그 수의 각 자릿수 숫자의 합으로 나누어 떨어지는 자연수를 말한다.예시 : 12는 각 자릿수 숫자의 합이 1+2=3이고, 12가 3으로 나누어떨어지므로 12는 10진법에서 하샤드 수다. 그러나 16은 1+6=7이고, 16이 7로 나누어떨어지지 않으므로 16은 10진법에서 하샤드 수가 아니다. (출처 : 나무위키)  문제 푼 순서1.  10으로 나누어 나온 숫자들을 더하는 식에 집중하다보니, if문에서 실수를 하였다.2. if문을 고쳤더니, 왜 다 통과가 안돼지? 생각..

intellij 단축기 정리

ctrl + alt + v = 밑에 밑줄 친 부분 자동으로 완성됨 ctrl + p = 매개변수(파라미터)에 뭐가 필요한지 알려줌ctrl + w = 더블클릭, 지정하는 것처럼 됨ctrl + o = 오버라이드 자동으로 완성해줌(뭘 오버라이드 할 지 선택하면 됨)ctrl + alt + n = 자동으로 생성?밑에처럼 배열 생성하고, 위에 선언했던 것을 밑에 배열 안에 선언하고 싶을때 사용!!!!ctrl + alt + m = 메서드 자동 생성shift + F6 = 한꺼번에 이름 변경 가능

.../TMI 2024.08.03

[Java/코딩테스트] 정수 내림차순으로 배치하기

안녕하세요!오늘은 되게 간단해보이는데 생각보다 간단하지 않았던 코딩테스트를 정리해보려고 합니다.   이 문제를 보자마자 문자열 →  배열에 넣고 → 배열을 돌려가면서 값 비교? 할까??문자열 → substring으로 하나씩 값 비교? 어떻게 풀어야하지? 위에처럼 생각하다가 구글링의 도움을 받고 밑에 방법처럼 풀어보았습니다.도움이 많이 되서 정리해봅니다. 1. long 타입을 String 타입으로 변환해줍니다. :  118372 → "118372"  2. String타입으로 변환된 값을 split메서드를 활용하여 문자열을 잘라서 배열에 넣어줍니다. : "118372" → ["1", "1", "8", "3", "7", "2"]    cf ) split() 메서드문자열을 매개변수(파라미터)로 받아서 해당 매개..

[Java] 정수형 → 문자열 / 문자열 → 정수형 변환 정리

안녕하세요!오늘은 제가 개인적으로 너무 헷갈렸던 부분에 대해 정리해 보도록 하겠습니다. 정수형(int, long형)  →  문자열방법1. Integer.toString(int값) & Long.toString(long값) 문자열로 바꾸고자 하는 값을 위에 나와있는 이미지처럼 형변환 시켜주면 됩니다!! 방법2. String.valueOf(int값) & String.valueOf(long값)문자열로 바꾸고자 하는 값을 위에 나와있는 이미지처럼 형변환 시켜주면 됩니다!! 방법3. 정수형값 + ""  ( = 문자열을 더해서 문자열로 바꾸는 방법)문자열은 다른 형과 더하면 "문자열"로만 출력되는 점을 이용했습니다. 문자열  → 정수형(int, long형)방법1. Integer.parseInt(String값) & L..

[Java/코딩테스트] 약수의 합

안녕하세요!오늘 푼 코딩테스트에 대해 작성해보도록 하겠습니다.    일단 이 문제를 풀려면,약수에 대해 알아야되는데요. 약수란어떤 수를 나누어 떨어지게 하는 수(= 나머지가 없다는 것!!) 나머지가 없다는 것에 바로 if 조건문에 " %" 연산자를 사용하고for문으로 약수를 모두 더하면 되겠구나 생각해서 풀었습니다.  통과한 창 보면 괜스레 기분이 좋네요ㅎㅎ   오늘의 요약코딩테스트는 생각보다 단순, 간단하게 생각해야 될 때도 있다.

[MYSQL] Limit문(= 상위 n개의 레코드 구하기)

안녕하세요!오늘은 SQL문제를 풀다가 발견한 "limit"구문에 대해 알아보겠습니다. Limit 문상위 n개의 레코드만 가져오고 싶을 때 사용합니다. (= 몇번째 행부터 ~ 몇번째 행까지도 출력 가능!!)SQL문의 가장 마지막에 적습니다. (= where로 검색한 후 order by로 정렬한 뒤 최종적으로 처리됨)만약, 테이블(컬럼)에 1개의 행만 있다면, 1 보다 큰 수로 지정하더라도 1개의 행만 출력됩니다.사용방법 : Limit 가져오고 싶은 행의 개수    밑에 문제를 예시로 들어서 설명해보자면, 위의 '문제2' 그림과 같이 출력이 되야 정답입니다.  그러면 일단 제가 위의 문제를 푼 순서는 다음과 같습니다.1. NAME 테이블만 출력 됐으니깐 SELECT절에는 NAME 테이블만 불러와야겠구나2. ..

[Git] 나중에 git add. 하다가 이런 오류 나오면

밑에 블로그를 참고하여 해결하자!! https://velog.io/@realzu/Git-LF-will-be-replaced-by-CRLF-in-%EC%97%90%EB%9F%AC-%ED%95%B4%EA%B2%B0%EB%B2%95 [Git] LF will be replaced by CRLF in 에러 해결법평소와 같이 git add .을 하는 순간 에러 메시지가 발생했다. 이는 윈도우에서 발생하는 에러 메시지로, 만약 유닉스 OS(맥)을 쓰고 있다면 `LF`와 `CRLF`의 위치가 반대되어 나올 것이다.velog.io

[Java / 코딩테스트] 배열의 평균값 구하기

안녕하세요!오늘은 코드카타를 풀다가 부딪친 문제를 해결하는 과정을 공유하겠습니다.   일단, 메모장에 적으면서 문제의 의도를 파악하려고 했습니다. 그래서 이 생각을 토대로 Scanner라는 함수를 써야될 것 같아서(intellij에서는 입력을 Scanner로 받아왔었어서 바로 Scanner클래스가 생각이 났습니다.)이렇게 시도해본 결과 오류가 나더군요..ㅠㅠ 그래서 구글링을 찾아서 본 결과,코딩테스트 같은 경우는 "Scanner"가 "Solution"이라고 이해하면 생각하기 쉽더라구요,,코딩테스트 같은 경우 어떻게 입력하는지는 고민 안해도 된다고 해서 향상된 for문으로 간단하게 사용하였더니테스트 통과하였습니다ㅎㅎ!!    읽어주셔서 감사합니다!!노력하는 개발자가 되겠습니다. :-)