전체 글 90

[프로그래머스 코딩 기초 트레이닝] 문자 개수 세기 - Java 풀이

프로그래머스 코딩 기초 트레이닝 "문자 개수 세기" 문제를 Java로 풀어봤습니다. 문자열에 등장하는 알파벳 A~Z, a~z 각각의 개수를 길이 52짜리 배열로 반환하는 문제로, char와 아스키코드를 이용한 인덱스 계산법을 정리했습니다.포스트 본문문제 설명알파벳 대소문자로만 이루어진 문자열 my_string이 주어질 때, my_string에서 'A'의 개수, 'B'의 개수, ..., 'Z'의 개수, 그리고 'a'의 개수, 'b'의 개수, ..., 'z'의 개수를 순서대로 담은 길이 52의 정수 배열을 반환하는 문제입니다.제한사항1 ≤ my_string의 길이 ≤ 1,000입출력 예my_string result"Programmers"[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, ..

[Spring Boot] ZXing으로 QR 코드 생성 API 만들기

개발 환경항목버전Java17Spring Boot4.1.1Spring Framework7.0.9Gradle9.7.1QR 라이브러리ZXing 3.5.3이번 포스팅은 Spring Boot로 QR 코드를 생성해서 이미지로 응답해주는 간단한 API를 만들어본 기록입니다. 텍스트나 URL을 입력하면 QR 코드 이미지(PNG)를 생성해서 돌려주는 구조입니다.1. build.gradle 의존성dependencies { // QR 코드 라이브러리 implementation 'com.google.zxing:core:3.5.3' implementation 'com.google.zxing:javase:3.5.3'}QR 코드 생성을 위해 필요한 의존성은 zxing의 core, javase 두 개입니다.core:..

JAVA/SpringBoot 2026.08.31

[프로그래머스 코딩테스트 입문] 등수 매기기 - Java 풀이

프로그래머스 코딩테스트 입문 "등수 매기기" 문제를 Java로 풀어봤습니다. 영어·수학 점수의 평균으로 학생들의 등수를 매기는 문제로, 이중 반복문을 이용한 직관적인 풀이로 정리했습니다. 문제 설명영어 점수와 수학 점수의 평균 점수를 기준으로 학생들의 등수를 매기는 문제입니다. 영어 점수와 수학 점수를 담은 2차원 정수 배열 score가 주어질 때, 평균 점수를 기준으로 매긴 등수를 배열로 반환하면 됩니다.제한사항0 ≤ score[0], score[1] ≤ 1001 ≤ score의 길이 ≤ 10score의 원소 길이는 2score는 중복된 원소를 갖지 않음입출력 예scoreresult[[80, 70], [90, 50], [40, 70], [50, 80]][1, 2, 4, 3][[80, 70], [70, ..

[기타] 티스토리 사이드바에 듀오링고 스트릭 위젯 추가하기

티스토리 사이드바에 듀오링고 스트릭 위젯 추가하기블로그 사이드바에 깃허브 잔디처럼 실시간으로 갱신되는 정보를 띄워두면 은근히 재미있습니다. 이번엔 듀오링고 스트릭을 티스토리 사이드바에 박아 넣어봤는데, 생각보다 간단해서 방법을 공유합니다.준비물: Duolingo Stats Card듀오링고는 공식적으로 웹 임베드용 위젯을 제공하지 않습니다 (앱 홈 화면 위젯만 지원). 대신 커뮤니티에서 만든 오픈소스 서비스인 Duolingo Stats Card를 사용하면 사용자명만으로 실시간 스트릭 카드를 SVG 이미지로 받아올 수 있습니다.기본 사용법은 이미지 태그 하나면 끝입니다. html테마도 15가지 중 골라서 붙일 수 있습니다 (light, dark, dracula, tokyonight, mint 등). html..

일상 2026.08.29

[git] GitHub push할 때 "not authorized" 에러 해결하기

GitHub push할 때 "not authorized" 에러 해결하기로컬에서 커밋까지 잘 끝내고 git push를 했는데 아래처럼 인증 에러가 나서 당황한 적이 있으실 겁니다. Can't connect to any repository: https://github.com/사용자명/저장소.git (not authorized)분명 예전에는 잘 되던 push인데 갑자기 인증이 안 되는 경우, 대부분은 GitHub가 더 이상 계정 비밀번호로는 git 작업을 허용하지 않기 때문입니다.원인GitHub는 2021년 8월부터 HTTPS 방식의 git 작업(clone, push, pull 등)에 계정 비밀번호 사용을 완전히 막았습니다. 대신 아래 둘 중 하나로 인증해야 합니다.Personal Access Token(PA..

Git 2026.08.29

[MySQL] 프로그래머스 레벨2_동명 동물 수 찾기

문제 동물 보호소에 들어온 동물 이름 중 두 번 이상 쓰인 이름과 해당 이름이 쓰인 횟수를 조회하는 SQL문을 작성해주세요. 이때 결과는 이름이 없는 동물은 집계에서 제외하며, 결과는 이름 순으로 조회 1. 2번 이상 쓰인 이름과 이름이 쓰인 횟수 조회 2. 이름이 없는 동물은 집계에서 제외 3. 결과는 이름 순으로 정렬 내 코드 SELECT NAME, COUNT(NAME) AS COUNT FROM ANIMAL_INS GROUP BY NAME HAVING COUNT(NAME) > 1 ORDER BY NAME; 1. Count함수로 name의 횟수를 조회 2. Group by절에 having으로 2회 이상 쓰인 name을 조회 3. Order by절로 name을 오름차순 정렬 결과 끝!

[MySQL] 프로그래머스 레벨2_중성화 여부 파악하기

문제 보호소의 동물이 중성화되었는지 아닌지 파악하려 합니다. 중성화된 동물은 SEX_UPON_INTAKE 컬럼에 'Neutered' 또는 'Spayed'라는 단어가 들어있습니다. 동물의 아이디와 이름, 중성화 여부를 아이디 순으로 조회하는 SQL문을 작성해주세요. 이때 중성화가 되어있다면 'O', 아니라면 'X'라고 표시해주세요. 1. 중성화된 동물은 Neutered 또는 Spayed 단어가 포함됨 2. 중성화가 됐으면 O 아니면 X 3. 아이디 순으로 조회 내 코드 SELECT ANIMAL_ID, NAME, IF(SEX_UPON_INTAKE LIKE '%Neutered%' OR SEX_UPON_INTAKE LIKE '%Spayed%', 'O', 'X') AS 중성화 FROM ANIMAL_INS ORDE..

[MySQL] 프로그래머스 레벨2_이름에 el이 들어가는 동물 찾기

문제 보호소에 돌아가신 할머니가 기르던 개를 찾는 사람이 찾아왔습니다. 이 사람이 말하길 할머니가 기르던 개는 이름에 'el'이 들어간다고 합니다. 동물 보호소에 들어온 동물 이름 중, 이름에 "EL"이 들어가는 개의 아이디와 이름을 조회하는 SQL문을 작성해주세요. 이때 결과는 이름 순으로 조회해주세요. 단, 이름의 대소문자는 구분하지 않습니다. 1. 동물 이름에 "EL"이 들어가는 개의 아이디와 이름 2. 대소문자는 구분하지 않음 3. 이름 순으로 조회 내 코드 SELECT ANIMAL_ID, NAME FROM ANIMAL_INS WHERE LOWER(NAME) LIKE LOWER('%EL%') AND ANIMAL_TYPE = 'Dog' ORDER BY NAME; 1. ANIMAL_ID, NAME 조..

[MySQL] 프로그래머스 레벨2_중복 제거하기

문제 동물 보호소에 들어온 동물의 이름은 몇 개인지 조회하는 SQL 문을 작성해주세요. 이때 이름이 NULL인 경우는 집계하지 않으며 중복되는 이름은 하나로 칩니다. 1. NULL은 집계하지 않음 2. 중복은 하나로 count 1. sam, sweetie만 count해서 결과는 2가 됨 내 코드 1. DISTINCT로 NAME컬넘의 값을 중복 제거 2. 중복 제거된 값을 COUNT 3. WHERE절에서 NAME이 NULL아닌 값을 조회 SELECT COUNT(DISTINCT(NAME)) AS COUNT FROM ANIMAL_INS WHERE NAME IS NOT NULL; 결과