반응형

전체 글 314

[JAVA] 백준 1107번: 리모컨

https://www.acmicpc.net/problem/1107 1107번: 리모컨 첫째 줄에 수빈이가 이동하려고 하는 채널 N (0 ≤ N ≤ 500,000)이 주어진다. 둘째 줄에는 고장난 버튼의 개수 M (0 ≤ M ≤ 10)이 주어진다. 고장난 버튼이 있는 경우에는 셋째 줄에는 고장난 버튼 www.acmicpc.net ✅ 골드 Ⅴ 🔶 풀이 임의의 버튼이 고장났을 경우 채널 N으로 이동하기 위해서 눌러야하는 버튼의 최소값. 완전탐색 브루트포스 문제. 1️⃣ 지금 보고 있는 채널은 100번 2️⃣ 고장난 버튼이 없을 수도 있다. 3️⃣ 완전탐색의 범위는 0 - 999,999 필자는 주로 StringTokenizer을 사용하는데 2️⃣번 예외에서 고장난 버튼이 0개면 Null Point 에러가 발생한..

오라클 COUNT(*) COUNT(1) vs COUNT(컬럼) 차이점

오늘 데이터베이스를 확인하던 중에 COUNT(1) 을 쓴 쿼리를 확인하고, COUNT(*) 과 어떤 차이가 있는지 궁금해서 검색해봤다. COUNT() 함수는 집계 함수로 SELECT 쿼리에 대한 행 수를 계산하는 함수이다. COUNT(*) vs COUNT(1) 결론부터 말하자면 두 개의 명령문에는 차이가 없다. 두 개의 명령문은 모두 동일한 방식으로 작동하며 성능 상에 차이가 없다고 공식 문서에도 명시되어있다. COUNT(*), COUNT(1) vs COUNT(컬럼명) COUNT(컬럼) : 해당 컬럼에 NULL 값이 들어간 행은 제외하고 계산함. COUNT(*) : NULL 값에 상관없이 모두 계산함. COUNT(컬럼) 명령문은 해당 컬럼에 NULL 값이 있으면 세지 않기 때문에 모든 행을 세는 COUN..

아이폰으로 찍은 사진 .jpg 형식으로 변환하는 방법

최근 아이폰을 서브폰으로 사용하게 되면서 사진 확장자로 고생한 적이 있다. 맛집 블로그를 별도로 운영하고 있어서 사진을 찍은 후에 확인을 했더니 확장자명이 .HEIC로 윈도우10에서 파일이 열리지도 않고 미리보기도 불가능한 상태가 되었다. HEIF, HEIC, HEVC 파일 형식은 뭘까? HEIF는 MPEG(Moving Picture Experts Group)에 의해 개발되었다고 한다. 이 MEPG는 동일한 크기의 JPEG 이미지보다 HEVC를 사용해서 HEIF 이미지에 2배의 정보를 저장할 수 있다. 이러한 HEIF / HEVC 파일을 2017년 애플에서 도입한 새로운 파일 형식으로 애플 플랫폼의 ios11 이후부터 사진, 비디오 포맷 확장자가 HEIC / HEVC로 변경되었다. 즉, JPG로 압축된 ..

IT 정보/Windows 2023.08.23

자바스크립트 배열 내 모든 숫자의 합 구하기 (for, forEach, reduce)

안녕하세요. Javascript에서 배열에 들어있는 모든 숫자의 합계를 계산하는 방법에 대해서 알아보겠습니다. for loop forEach() 메소드 reduce() 메소드 총 3가지 방법으로 배열 내에 모든 숫자들의 합계를 구해보겠습니다. 1. for loop const nums = [1, 2, 3, 4, 5]; let sum = 0; for (let i=0; i { sum += num; }) // 15 3. reduce() 메소드 const nums = [1, 2, 3, 4, 5]; const sum = nums.reduce((accumulator, currentValue) => { return accumulator + currentValue }, 0); // 15 reduce()는 ES6에서 도입..

JAVA 자바 정규표현식으로 주민등록번호, 이메일 유효성 검사하기 (Pattern, Matcher)

정규표현식은 특정한 규칙을 가진 문자열의 집합을 표현하기 위해 쓰이는 형식언어다. 주로 전화번호, 주민등록번호, 이메일 등 형식이 정해져있는 데이터에 대해 유효성 검사를 진행할 때 사용된다. 정규표현식 사용 방법 자바에서 정규표현식을 사용할 때는 java.util.regex 패키지 안에 있는 Pattern 클래스와 Matcher 클래스를 주로 사용한다. Pattern 클래스 java.util.regex.Pattern 클래스의 matches() 메서드를 활용해서 해당 문자열이 정규표현식에 적합한 상태인지 검증할 수 있다. 매개 변수는 (정규표현식, 문자열)로 2개이고, 리턴값은 true, false를 반환한다. import java.io.IOException; import java.util.regex.Pa..

[JAVA] 백준 5107번: 마니또

https://www.acmicpc.net/problem/5107 5107번: 마니또 N명의 사람들이 있다. 이들은 각자 다른 한 명의 이름이 적힌 쪽지를 받아서, 그 사람에게 몰래 선행을 베푼다. 이때 자기 자신의 이름을 받을 수는 없으며, 선행을 받은 사람은 누가 자신을 도와 www.acmicpc.net ✅ 실버Ⅰ 🔶 풀이 A에서 출발해서 B, C, ··· 를 지나서 다시 A로 돌아오는 경우가 몇 개나 발생하는가. 1️⃣ 선행을 베푸는 사람과 선행을 받는 사람은 결코 중복되지 않는다. 2️⃣ 이름의 길이는 10글자가 넘지 않고 테스트 케이스마다 사람은 3명에서 20명이다. 해당 문제에서는 딱히 신경써야할 조건은 없다. 1️⃣번 조건을 봤을 때 HashMap을 사용하면 될 것 같다고 생각했다. Hash..

[JAVA] 백준 1103번: 게임

https://www.acmicpc.net/problem/1103 1103번: 게임 줄에 보드의 세로 크기 N과 가로 크기 M이 주어진다. 이 값은 모두 50보다 작거나 같은 자연수이다. 둘째 줄부터 N개의 줄에 보드의 상태가 주어진다. 쓰여 있는 숫자는 1부터 9까지의 자연수 또는 www.acmicpc.net ✅ 골드 Ⅱ 🔶 풀이 보드에 적힌 숫자만큼 동,서,남,북 4방향으로 이동하면서 최대 몇 번의 동전을 움직일 수 있는지 구하는 문제. dfs와 dp를 이용하는 문제. 1️⃣ 동전이 구멍에 빠지거나 보드의 바깥으로 나가면 게임 종료 2️⃣ 동전을 무한번 움직일 수 있을 경우 -1을 출력 게임이 종료되는 조건은 위와 같다. 1️⃣번 조건은 dfs, bfs를 한 번이라도 풀어봤다면 쉽게 해결할 수 있다...

[JAVA] 백준 15831번: 준표의 조약돌

https://www.acmicpc.net/problem/15831 15831번: 준표의 조약돌 첫 줄에 조약돌의 총 개수 N, 준표가 원하는 검은 조약돌의 최대개수 B와 하얀 조약돌의 최소개수 W가 주어진다. 둘째 줄에는 N개의 조약돌의 정보가 한 줄로 주어진다. i번째 문자가 B라면 i번 조 www.acmicpc.net ✅ 골드 Ⅲ 🔶 풀이 해당 문제는 그냥 느낌대로 풀고 봤더니 알고리즘 분류가 두 포인터라고 한다. 1️⃣ 검은 조약돌의 개수를 B개 이하로 줍고 싶다. 2️⃣ 하얀 조약돌의 개수를 W개 이상으로 줍고 싶다. 위 조건을 충족되는 가장 긴 구간의 산책로 길이를 구하면 된다. 예제 1번을 통해서 어떻게 진행되는지 살펴보겠다. 10 1 2 WBBWWBWWBW 우선 시작점과 도착점을 모두 0으..

알고리즘 2023.07.26

IntelliJ IDE 다운로드 방법 및 프로젝트 생성하기

IntelliJ는 JetBrains사에서 제작한 상용 자바 통합 개발 환경(IDE)이다. 요즘 이클립스보다 더 많이 사용하는 추세이기에 설치 방법에 대해서 포스팅해보려고 한다. IntelliJ 다운로드 1. IntelliJ IDEA 사이트에 접속한다. (https://www.jetbrains.com/) JetBrains: Essential tools for software developers and teams JetBrains is a cutting-edge software vendor specializing in the creation of intelligent development tools, including IntelliJ IDEA – the leading Java IDE, and the Kotl..

[JAVA] 백준 2294번: 동전 2

https://www.acmicpc.net/problem/2294 2294번: 동전 2 첫째 줄에 n, k가 주어진다. (1 ≤ n ≤ 100, 1 ≤ k ≤ 10,000) 다음 n개의 줄에는 각각의 동전의 가치가 주어진다. 동전의 가치는 100,000보다 작거나 같은 자연수이다. 가치가 같은 동전이 여러 번 주어 www.acmicpc.net ✅ 골드 Ⅴ 🔶 풀이 N가지 종류의 동전이 주어지면 동전을 최대한 적게 사용해서 K원을 만들어라. 다이나믹 프로그래밍(dp) 문제로 아래의 조건만 신경써주면 딱히 어려운 게 없는 문제라고 생각한다. 1️⃣ 각각의 동전을 여러 개 사용할 수 있음 2️⃣ 정확하게 K원을 만들지 못 하면 -1을 출력함 예제로 점화식을 찾아보겠다. 1원 동전 1 2 3 4 5 6 7 8 ..

반응형