전체 글

🔗 문제 링크 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 💡 문제 풀이 및 해석 먼저 ANIMAL_ID, NAME 을 조회해야 하므로 SELECT ANIMAL_ID, NAME ``` 을 해준다. 이름에 el이 들어가야 하고(대소문자도 X), '개'를 찾아야 한다. WHERE NAME LIKE "%EL%" AND ANIMAL_TYPE = "DOG" 이름 순으로 정렬해야 하므로 ORDER BY NAME 을 추가해주면 끝난다. ⭐️ 정답 코드 및 설명 SELECT ANIMAL_ID, NAME FROM ANIMAL_INS WHERE NAME LIKE "%EL..
🔗 문제 링크 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 💡 문제 풀이 및 해석 이름의 수가 2번 이상 쓰인 이름을 조회하는 것이다. NAME을 기준으로 중복되는 것을 세야 하므로 GROUP BY NAME HAVING COUNT(NAME) > 1 이 필요하다. 이름과 그 이름을 세는 테이블을 조회해야 하므로 SELECT NAME , COUNT(NAME) AS COUNT 을 해주는데, COUNT(*)을 하면, NULL 값도 포함하므로 NULL이 2개 이상 있는 데이터면 오류가 난다. (이 문제는 NULL이 없어서 통과는 된다.) 4. 마지막으로 NAME..
🔗 문제 링크 14502번: 연구소 인체에 치명적인 바이러스를 연구하던 연구소에서 바이러스가 유출되었다. 다행히 바이러스는 아직 퍼지지 않았고, 바이러스의 확산을 막기 위해서 연구소에 벽을 세우려고 한다. 연구소는 크 www.acmicpc.net 💡 문제 풀이 및 해석 먼저 가로, 세로 조건이 8이하이다. 따라서 전체 칸은 64칸이다. 3개의 모든 기둥을 박아야 하므로 64개의 칸 중에서 3개를 선택하는 조합, 그리고 그 상태에서 BFS를 진행한다고 하면, 최대 $64\times63\times62\over3\times2\times1$ $\times64 = 2,666,496$ 이 된다. 이를 토대로 완전탐색을 진행하기로 하였다. 먼저 64개의 칸중 3개의 칸을 조합으로 구성한다. 그 구성이 실제로 가능하면..
🔗 문제 링크 21608번: 상어 초등학교 상어 초등학교에는 교실이 하나 있고, 교실은 N×N 크기의 격자로 나타낼 수 있다. 학교에 다니는 학생의 수는 N2명이다. 오늘은 모든 학생의 자리를 정하는 날이다. 학생은 1번부터 N2번까지 번호 www.acmicpc.net 💡 문제 풀이 및 해석 N이 최대 20이고, 교실의 크기는 20*20 이므로 400이다. 모든 칸에서 인접한 칸을 조사해도 400*4 밖에되지 않는다. 학생들의 배치는 BruteForce로 하고 만족도 또한 BruteForce로 해도 10만번으로 끝낼 수 있다. 코드에 대한 자세한 설명은 주석에 달아뒀다. ⭐️ 정답 코드 및 설명 #include #include #include #include #include using namespace ..
🔗 문제 링크 17144번: 미세먼지 안녕! 미세먼지를 제거하기 위해 구사과는 공기청정기를 설치하려고 한다. 공기청정기의 성능을 테스트하기 위해 구사과는 집을 크기가 R×C인 격자판으로 나타냈고, 1×1 크기의 칸으로 나눴다. 구사 www.acmicpc.net 💡 문제 풀이 및 해석 공기가 한 번에 다 퍼지게 해야된다. 따라서 모든칸에서 퍼지게 해야되므로 모든 칸에서 로직이 작동되게 해야된다. 현재 칸에서 퍼지게하고, 다음칸을 퍼지게하면, 이미 먼지가 퍼진 상태에서 로직이 실행되므로 먼지가 퍼지는 배열을 따로 만들어줘야 한다. 먼지가 다 퍼지면, 공기가 순환되게 해야된다. 이 때, 공기청정기로 들어오는 방향으로 1칸씩 땡기고, 공기청정기에서 나오는 칸만 0으로 처리해주면 된다. 마지막으로 모든 칸의 먼지..
🧑🏻‍💻 Git 설치 방법 [Git 설치] 를 클릭하면 설치할 수 있는 사이트로 들어가집니다. 윈도우의 경우는 "Download for Window"를 누르고 gitbash 까지 설치하면 되고, macOS의 경우 아래 homebrew를 누르고 들어가서 Install Homebrew의 주소를 terminal에 쳐주면 Homebrew는 설치가 된다. 그 이후에 터미널에서 brew install git 을 terminal에 쳐주면, git이 설치가 된다. 📁 GitHub에 저장소 만들기 본인의 repositories로 들어간다. 새로운 repository 를 만든다. repository를 만들 때, public 은 공개이고 private 는 비공개라고 생각하면 된다. 둘 중 하나만 체크하고 만든다. https..
🔗 문제 링크 14503번: 로봇 청소기 첫째 줄에 방의 크기 $N$과 $M$이 입력된다. $(3 \le N, M \le 50)$ 둘째 줄에 처음에 로봇 청소기가 있는 칸의 좌표 $(r, c)$와 처음에 로봇 청소기가 바라보는 방향 $d$가 입력된다. $d$가 $0$인 경우 북쪽 www.acmicpc.net 💡 문제 풀이 및 해석 문제의 전체적인 흐름은 '현재 칸 청소' 반시계 90도로 회전하면서 청소할 있을 경우 이동 한 바퀴 돌고도 청소할 공간이 없다면 후진한다. 후진할 공간이 없다면 작동을 멈춘다. ⭐️ 정답 코드 및 설명 #include using namespace std; int N, M, r, c, d; int dir[] = { 0,3,2,1 }; int next_x[] = { 0,1,0,-1..
🔗 문제 링크 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 💡 문제 풀이 및 해석 OPTIONS 에서 '네비게이션'을 포함하는 것과 자동차 ID를 기준으로 내림차순 하는 것 빼고는 다른 조건이 없다. SELECT * FROM CAR_RENTAL_COMPANY_CAR 을 해준다. OPTIONS 에서 '네비게이션'을 포함하는 것만 뽑기위해 WHERE OPTIONS LIKE '%네비게이션%' 을 해준다. CAR_ID 로 내림차순을 하기 위해 ORDER BY CAR_ID DESC 를 추가해준다. ⭐️ 정답 코드 및 설명 SELECT * FROM CAR_RENT..
RealTone
개발공부 블로그