전체 글 100

[프로그래머스/c++] 프린터

https://programmers.co.kr/learn/courses/30/lessons/42587 코딩테스트 연습 - 프린터 일반적인 프린터는 인쇄 요청이 들어온 순서대로 인쇄합니다. 그렇기 때문에 중요한 문서가 나중에 인쇄될 수 있습니다. 이런 문제를 보완하기 위해 중요도가 높은 문서를 먼저 인쇄하는 프린 programmers.co.kr 이래저래.. 정신없어서 블로그에 글을 못 썼다! 자취방도 드디어 구하고 키키 다시 열심히 공부해야지 1) 풀이 우선, 가장 앞에 있는 문서를 빼고 중요도를 확인한 뒤 마지막에 넣거나 인쇄하는 과정이 필요하므로 큐(queue)를 이용해서 푸는 문제임을 알 수 있다. priorities에 있는 문서를 큐에 모두 저장하고 빼고 넣는 과정을 진행하면 된다. 하지만 한 가지..

[프로그래머스/c++] 짝지어 제거하기

https://programmers.co.kr/learn/courses/30/lessons/12973 코딩테스트 연습 - 짝지어 제거하기 짝지어 제거하기는, 알파벳 소문자로 이루어진 문자열을 가지고 시작합니다. 먼저 문자열에서 같은 알파벳이 2개 붙어 있는 짝을 찾습니다. 그다음, 그 둘을 제거한 뒤, 앞뒤로 문자열을 이어 붙 programmers.co.kr 1) 풀이 처음에는 단순히 '문자열' 문제라고 생각했다... 주어지는 것도 string 이었고 adjacent_find함수를 통해서 짝지어지는 문자의 iterator를 받아서 erase에 넣고 지워주는 코드를 짰다.. 아래가 제일 처음 내가 짰던 코드다. #include #include #include using namespace std; int s..

[프로그래머스/c++] 폰켓몬

https://programmers.co.kr/learn/courses/30/lessons/1845?language=cpp 코딩테스트 연습 - 폰켓몬 당신은 폰켓몬을 잡기 위한 오랜 여행 끝에, 홍 박사님의 연구실에 도착했습니다. 홍 박사님은 당신에게 자신의 연구실에 있는 총 N 마리의 폰켓몬 중에서 N/2마리를 가져가도 좋다고 했습니다. programmers.co.kr 1) 풀이 폰켓몬 N/2 마리를 최대한 많은 종류로 선택하는 방법은, 주어지는 폰켓몬 배열에서 중복값을 제거하고 고르는 방법이다. 중복값을 제거하는 방법은 unique 함수를 이용하면 된다. 해당 함수로 중복값을 제거하는 방법은 아래 글에 정리해놓았다! 2021.06.16 - [언어/c++] - [c++] vector 중복원소 제거(so..

[c++] vector 중복원소 제거(sort, unique)

※배워가고 있는 학생입니다. 틀린 부분이 있다면 댓글로 피드백 부탁드려요😁 알고리즘 문제를 풀다보면, 벡터에서 중복원소를 제거해야 하는 경우가 나온다. 해당 경우에 쉽게 중복원소를 제거할 수 있는 방법을 알아내 정리해보려고 한다! 1) unique 함수 - 헤더에 정의되어 있는 함수 - 벡터 내에서 중복되지 않는 원소들을 앞에서부터 채워나가는 함수 즉, 벡터 내에서 중복되는 값을 뒤쪽으로 모아줌 - 자신이 바꾼 vector의 end() 반환 (첫번째 중복값의 iterator 반환) - 앞뒤 원소들을 비교하기 때문에 반드시 sort 로 정렬한 뒤 사용해야 함! 2) 중복 원소 지우기 1. 벡터를 정렬(sort) 2. 중복 원소들을 벡터의 뒷부분으로 보내기 (unique) 3. 중복된 원소들을 삭제 (era..

그외/C++ 2021.06.16

[JavaScript] 숫자 자료형(number)

※배워가는 학생입니다. 틀린 부분이 있다면 댓글로 피드백 부탁드려요😁 1) 자바스크립트 자료형 자바스크립트의 자료형은 크게 기본 타입과 참조 타입으로 나뉨 - 기본 타입 : 숫자, 문자열, 불린값, undefined, null - 참조 타입 : 객체 (배열, 함수, 정규표현식) 2) 숫자 c언어와 같은 경우에 int, long, float, double 등 정수냐 실수냐에 따라 다양한 숫자타입이 존재하지만, 자바스크립트의 경우에는 딱 하나의 숫자형, number 만 존재한다. let intNum=10; let floatNum=0.5; console.log(typeof intNum); // number console.log(typeof floatNum); //number 자바스크립트에서는 모든 숫자를 64..

웹/JavaScript 2021.06.15

[JavaScript] undefined vs null (undefined과 null의 차이점)

※배워가고 있는 학생입니다. 틀린 부분은 댓글로 알려주시면 감사하겠습니다😁 자바스크립트 데이터 타입 중 null과 undefined의 차이를 잘 몰라서 정리해두려고 한다. 사실 그렇게까지 중요한지는 잘 모르겠지만 .. 그냥 궁금해서 찾아보았다! 배우는 입장에서 중요하고 중요하지 않고를 따져가면서 하기엔 넘 건방지니까,, null과 undefined는 모두 자바스크립트에서 '값이 비어있음'을 나타낸다 1) undefined - 값이 할당되지 않은 변수의 기본값. 즉, 변수를 선언할 때 값을 대입하지 않으면 undefined로 저장 - 반환할 결과값이 없을 때. - 타입이자, 값 let empty; //undefined console.log(typeof empty); //undefined 2) null - ..

웹/JavaScript 2021.06.15

[프로그래머스/c++] 완주하지 못한 선수

https://programmers.co.kr/learn/courses/30/lessons/42576 코딩테스트 연습 - 완주하지 못한 선수 수많은 마라톤 선수들이 마라톤에 참여하였습니다. 단 한 명의 선수를 제외하고는 모든 선수가 마라톤을 완주하였습니다. 마라톤에 참여한 선수들의 이름이 담긴 배열 participant와 완주한 선수 programmers.co.kr 1) 풀이 요즘 프로그래머스를 열심히 푸는 중인데, 이것도 이 형식에 적응하다보니 좀 풀만한 것 같기도 하고... 그치만 백준을 너무 오래도록 풀어서 아직까지 어색한 감은 있다.. 아무튼, 위 문제는 단순히 생각하면 오히려 쉽게 풀리는 문제이다. 처음에는 참여자 배열의 값들을 반복문으로 하나씩 find함수에 넣고, 해당 값이 completio..

[c++] vector<vector<int>> (이차원 벡터) 길이

※배워가고 있는 학생입니다. 틀린 부분이 있다면 댓글로 피드백 부탁드려요😁 * 이 글은 vector와 vector의 개념을 알고 있다는 전제 하에 설명이 되어있습니다. 이전부터 2차원 vector를 계속 사용해왔지만, 항상 문제를 풀 때 입력받은 int로 row와 column을 설정해왔기에 길이를 구하는 방법은 나도 오늘 처음 알았다! 🙄 .size() 결론부터 말하자면, vector 크기를 구할 때 늘 사용해왔던 .size()함수를 이용하면 된다! row: 벡터.size() column: 벡터[0].size() 우리가 알고 있듯, vector는 vector를 각각의 row에 넣어주는 방식의 2차원 동적배열이다. 그냥 .size()함수를 사용하면 기본적으로 row의 길이만 리턴되지만, 해당 row에 들어..

그외/C++ 2021.06.13

[프로그래머스/c++] 게임 맵 최단거리

https://programmers.co.kr/learn/courses/30/lessons/1844 코딩테스트 연습 - 게임 맵 최단거리 [[1,0,1,1,1],[1,0,1,0,1],[1,0,1,1,1],[1,1,1,0,1],[0,0,0,0,1]] 11 [[1,0,1,1,1],[1,0,1,0,1],[1,0,1,1,1],[1,1,1,0,0],[0,0,0,0,1]] -1 programmers.co.kr 1) 풀이 요즘 BFS, DFS 문제를 백준에서 집중적으로 다시 풀어보다가, 프로그래머스에서는 한 번도 이 알고리즘문제를 풀어본 적이 없어서 풀어보았다! 사실 기존의 BFS 풀이랑 별반 다를 건 없는데, 백준과 푸는 방식? 제출 방식? 뭐라고 해야 하나. 아무튼.. 그게 달라서 적응이 좀 필요할 것 같다 😂 ..

#1 로또 번호 추첨기

※소소한 개인 프로젝트 기록입니다. 1) 과정 날이 좋아서 산책을 했다. 요즘 자바스크립트 실전 연습을 하고 싶었지만, 도통 아이디어가 안 떠올랐는데 문득 어렸을적부터 로또 1등, 2등이 많이 나왔던 동네 슈퍼를 지나가게 되었다. 여기에서 아이디어를 얻어 소소하지만 '로또 번호 추첨기'를 만들어보기로 결심했다! 일단, 나는 로또에 대해 아무것도 모르기 때문에 로또에 대해서 먼저 알아보았다. 1부터 45까지의 숫자 중 6개를 맞히면 된다. 거기에 추가로 아래와 같이 숫자 5개를 맞힌 상황에서 보너스 볼까지 맞히면 2등이 되는 2등 보너스볼도 나온다. -출처: https://namu.wiki/w/%EB%A1%9C%EB%98%90%206/45 아하, 그러면 기본 6개 공 + 보너스 공 번호까지 추첨하는 추첨기..

개발일기 2021.06.07
728x90