2024/08 25

[Java/코딩테스트] 약수의 개수와 덧셈

설명1. left와 right 사이에 있는 숫자를 조회하기 위해, for문을 사용해줍니다.2. 약수의 개수를 세기 위해 'count'를 선언, 초기화해줍니다.3. 이중for문을 사용하여 해당되는 숫자의 약수를 구해줍니다.4. if문으로 약수가 맞으면 약수의 개수('count')를 증가시켜줍니다.5. 약수의 개수를 if문을 이용하여 짝수일 경우에는 더하고, 홀수일 경우에는 빼줍니다.

[Java/코딩테스트] 가운데 글자 가져오기

안녕하세요~오늘은 생각한 대로 자바 문법으로 옮겼던 코딩테스트입니다.(구글링도 하지 않고, 제 스스로 했답니다..ㅎㅎ)      일단, 문제를 보고 어떤 규칙이 있는지 찾아보았습니다.그리고 보니깐 2로 나누었을때 나온 몫의 값부터 추출하면 되겠더군요 그래서 "substring()" 메서드를 활용하였습니다.substring() 메서드에 대한 설명에 대해서는 제 블로그에 올려놨던 내용을 예시로 밑에 추가하겠습니다.(형광펜 친 부분만 보세요~!)  위의 설명을 토대로 문제를 풀기 위해 인덱스를 어떻게 해야할지 직접 필기를 했습니다.직접 쓰면서 해야 이해가 빠르더라구요ㅎㅎ    이제, 위의 내용들을 토대로 짠 코드입니다.  저는 테스트의 3, 4번째를 추가하여 완벽히 실행되는지 더 확인하였습니다.   오늘의 요..

[Java] 클래스 관련 문제

안녕하세요!오늘은 클래스에 대해 공부하다가 나중을 위해 정리해 놓고 싶은 부분을 가져왔습니다.  일단, 만들어야되는 클래스들을 먼저 보여드리겠습니다. 밑에는 위에를 토대로 제가 만든 클래스들 입니다.Book 클래스 Library 클래스 Main 클래스 출력창    오늘의 요약향상된 for문을 사용할 때, 클래스(객체)의 변수타입도 사용이 가능하다..!

[Java/코딩테스트] 없는 숫자 더하기

안녕하세요!오늘은 제가 의도한 대로 문제를 풀고싶어서 고민을 많이했던 코딩테스트를 가지고 왔습니다.   시도 1.없는 숫자를 어떻게 골라내지 생각하다가 노가다로 ||(또는) 연산자를 사용해서 없는 숫자를 고르고 싶었으나,,그럼 없는 숫자들은 어떻게 더하지..? 라고 생각이 들고는,,, 답이 안나와서 다른 시도를 했습니다. 시도 2.이중 for문을 사용하여 "numbers 배열에 들어있는 값( i )" 과 j를 선언하여 비교해서 없는 숫자를 더하고 싶었습니다그러나 비교해서 없는 숫자를 다 더하다보니깐 있는 숫자까지 더해버리는 결과를 초래하게 되더군요 사실, 왜이렇게 복잡하게 풀지??라는 생각이 들 수 있지만(다른분들 풀이 보니깐 0~9까지 더한다음에 numbers의 합을 빼줘서 간단하게 풀더라구요) 저는 ..

[MYSQL] DATETIME에서 DATE로 형 변환 (DATE_FORMAT)

안녕하세요!오늘은 DATE_FORMAT에 대해 알아보려고 합니다.   DATE_FORMATDATE 또는 DATETIME 형식의 값을 지정된 형식의 문자열로 변환하기 위해 사용합니다.(=사용자가 원하는 형태로 변경하는 것)사용 방법(대소문자 사용 주의!)DATE_FORMAT(datetime컬럼명, 포맷할 형태)포맷 형태 정리( ' - '로 구분 )포맷문자설명(예시)포맷문자설명(예시)포맷문자설명(예시)포맷문자설명(예시)%Y4자리 년도(2024) %y 2자리 년도(24)     %M월 영어 풀네임(August) %b 월 짧은 영어(Jan, Aug, ...)  %m 월 (01~12)  %c월 (1~12)(앞에 0이 없어진 버전!) %D일 영어(1st, 6th, 29th..)%d일 (01~31)%e일 (1~31)..

[Java/코딩테스트] 음양 더하기 ( + 지역변수에 대하여)

안녕하세요!오늘은 생각하면 되게 간단한 코딩테스트를 들고왔습니다..!   처음에는 true면 그냥 더하고, false면 음수로 봐꿔줘서 더하면 되겠구나? 라고 간단하게 생각했는데음수로 봐꿔주는 메서드가 있는건가? 문자열로 "-" 더해줄까?? 라고 생각을 깊게 하다보니 제대로 못풀고 있었습니다. 그러던 찰나에 "-1"을 곱하면 당연히 "음수"가 된다는 생각이 떠올랐습니다. 그리고 또 다른 난관에 부딪쳤는데,,그럼 어떻게 합쳐서 더하지..? 생각했습니다.(코딩을 막 배운 저라, 가끔씩 생각이 이상한쪽으로 깊게 생각하게 되더군요,,ㅎㅎ)  많은 생각과 고민을 한 만큼 오늘 코딩테스트는 한 번의 시도 끝에 통과했습니다!! 뭔가 생각한대로 한번에 통과하니깐 기분이 좋더라구요ㅎㅎ이제 저 코드를 더 간단하게 할 방법..

[MySQL/코딩테스트] NULL 처리하기(IFNULL, CASE, COALESCE 사용)

안녕하세요!오늘은 SQL 코딩테스트 문제를 들고왔습니다.  일단 저는 이 문제를 보고,  "replace"를 활용하여 문제를 풀으면 되겠는데?? 생각했습니다ㅎㅎ  당연히 통과할 줄 알았던 테스트였지만,,결과가 이상하게 나오더라구요..!그래서 replace에 대해 다시 찾아 본 결과,replace는 바꿀 값이 아무것도 없으면 "Null"을 치환한다고 합니다.생각해보니깐 문자열을 바꿔주는 함수인데, 애초에 아무것도 없는(null) 값을 바꾸려고 시도했던 부분이 스스로 너무 부끄러웠습니다ㅎㅎ  이제! Null 값을 치환해주는 방법에 대해 알아보겠습니다. 1.  IFNULL 함수컬럼의 데이터가 null인 경우 대체 값으로 치환할 수 있습니다.(null값을 치환하는 가장 간단한 방법!!)사용 방법IFNULL(컬럼..

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

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