Dreaming developer

예비 개발자를 꿈꾸는 서연이의 기록일지

Together, Tomorrow

전체 글 82

[백준 14501번 ] 퇴사

14501번: 퇴사 (acmicpc.net) 14501번: 퇴사 첫째 줄에 백준이가 얻을 수 있는 최대 이익을 출력한다. www.acmicpc.net [문제] [해결전략] nn을 설정하고 그때의 profit값을 활용해 최대 수익을 갱신해준다. [풀이] #include #include using namespace std; typedef pair ci; int max_profit=-1; //최대수익 void consult(int n,int profit,int day, vector consulting) { //총 일수, 수익,현재 날짜, 상담 정보 if (day > n) //n일차를 넘어서면 { max_profit = max(max_profit, profit); // 최대 수익 갱신. return; } if ..

카테고리 없음 2022.02.09

[백준 17626번] Four Squares

17626번: Four Squares (acmicpc.net) 17626번: Four Squares 라그랑주는 1770년에 모든 자연수는 넷 혹은 그 이하의 제곱수의 합으로 표현할 수 있다고 증명하였다. 어떤 자연수는 복수의 방법으로 표현된다. 예를 들면, 26은 52과 12의 합이다; 또한 42 + 32 + 1 www.acmicpc.net [문제] 자연수 n이 주어질 때, n을 최소 개수의 제곱수 합으로 표현하는 컴퓨터 프로그램 [해결전략] 1. 재귀탐색 제곱수들을 배열에 저장해놓고, 1 3 9 16 25 36 49 64 재귀함수이용(최대 depth = 4)해서 4개의 정수를 뽑자. 그런데 n의 범위를 살펴보니 1 ≤ n ≤ 50,000 이고 제곱급취하면 225니까 1~ 4개의 정수를 뽑는 경우의수는 ..

[백준 18511] 큰 수 구성하기

18511번: 큰 수 구성하기 (acmicpc.net) 18511번: 큰 수 구성하기 첫째 줄에 N, K의 원소의 개수가 공백을 기준으로 구분되어 자연수로 주어진다. (10 ≤ N ≤ 100,000,000, 1 ≤ K의 원소의 개수 ≤ 3) 둘째 줄에 K의 원소들이 공백을 기준으로 구분되어 주어진다. 각 www.acmicpc.net [문제] [해결전략] 1. 집합 K의 원소로 만들수 있는 모든 숫자를 만들고 n보다 작을때에만 갱신시킨다. -> 중복 순열. 재귀함수 활용. (C++) 중복 순열(Repeated Permutation) 구현하기 - 평생 공부 블로그 : Today I Learned‍ 🌙 (ansohxxn.github.io) (C++) 중복 순열(Repeated Permutation) 구현하기 ..

[백준 5568번] 카드놓기

5568번: 카드 놓기 (acmicpc.net) 5568번: 카드 놓기 예제 1의 경우 상근이는 11, 12, 21, 112, 121, 122, 212를 만들 수 있다. www.acmicpc.net [문제] [해결전략] 처음엔 단순하게 서로다른 카드 n개중 k개를 뽑는 경우의 수 nPk 즉, 순열을 생각했는데 금방 다르다는 걸 깨달을 수 있었다.1,11,13,4 가 있을때 1,11 로 만든 111과 11,1로 만든 111은 서로 같기 때문이다.물론 순열에서는 1,11과 11,1이 다른 경우의수로 카운트 되겠지만 이 문제는 `나열`해서 만드는 수의 개수를 세는 것이기 때문에 적용시킬 수 없었다. 그래서 그냥 하나씩 다 만들어보고 카운트해보는 방법밖에는 없다고 생각했다.그런데 문제는 카드를 뽑는 수가 일정하..

[백준 2422번] 한윤정이 이탈리아에 가서 아이스크림을 사먹는데

2422번: 한윤정이 이탈리아에 가서 아이스크림을 사먹는데 (acmicpc.net) 2422번: 한윤정이 이탈리아에 가서 아이스크림을 사먹는데 첫째 줄에 정수 N과 M이 주어진다. N은 아이스크림 종류의 수이고, M은 섞어먹으면 안 되는 조합의 개수이다. 아래 M개의 줄에는 섞어먹으면 안 되는 조합의 번호가 주어진다. 같은 조합은 두 번 www.acmicpc.net [문제] [해결전략] 1. 삼중 포문 이용해서 아이스크림 세개를 선택한다. 2. 선택된 아이스크림 세개가 규칙 (섞어먹으면 안되는 조합)에 어긋나는지 확인한다. [풀이] #include #include #include #define NUM_OF_ICECREAM 3 //한번에 선택할 수 있는 아이스크림 수 using namespace std; ..

c/c++ 로 Javascript의 padStart() 구현하기

우리는 종종 "5","3" 등의 문자열을 "05" ,"03" 과 같이 두자릿수로 형식을 맞춰야 하는 경우가 있다. 물론 출력만 그렇게 하면 된다면 %2d 등의 형식지정자를 사용해도 될것이다. 그러나 분명 출력뿐만 아니라 변환된 값의 실체를 어디엔가 이용해야할 때가 있다. 자바스크립트 ES6에는 방금 말한 역할을 하는 padStart()함수가 있다. String.prototype.padStart() 우선, padStart() 메서드는 현재 문자열의 시작을 다른 문자열로 채워, 주어진 길이를 만족하는 새로운 문자열을 반환해주는 함수이다. 채워넣기는 대상 문자열의 시작(좌측)부터 적용된다. "1".padStart(2,"0"); // 길이가 2가 아닐경우 string의 시작부분에 0을 추가함. 우리는 JS pa..

C,C++/C++ 2022.01.16

[C++] 라이브러리 정리

알고리즘 문제 풀때 유용하게 사용하는 라이브러리들을 정리해두려고 한다. 1. string 라이브러리 : #include [C++] string 클래스, 문자열에 대해서 (총정리) (tistory.com) [C++] string 클래스, 문자열에 대해서 (총정리) 안녕하세요 BlockDMask 입니다.오늘은 C++의 std::string 클래스(문자열)에 대해서 세세 하게 알아볼것 입니다.예전 글을 보다가 제가 작성한 이 문서를 보게 되었는데요, 너무 내용이 빈약하다고 생 blockdmask.tistory.com 1.1. find 함수 : 해당 문자열에 특정 문자 or 문자열이 포함되었는지 여부를 확인할때 유용하다. size_type find(const basic_string& str, size_type ..

C,C++/C++ basic 2022.01.16

[HTML] 시맨틱 ( semantic) 태그

1. 시맨틱 태그란? HTML Semantic Elements (w3schools.com) HTML Semantic Elements W3Schools offers free online tutorials, references and exercises in all the major languages of the web. Covering popular subjects like HTML, CSS, JavaScript, Python, SQL, Java, and many, many more. www.w3schools.com : HTML5의 시맨틱 요소로 작성한 소스를 보면 태그만 보고도 어느부분이 제목이고 메뉴인지, 실제내용인지 쉽게 파악할 수 있다. 소스만으로 문서 내용을 알 수 있으면 사이트를 검색할 때 필요한..

Web design/HTML 2022.01.08