일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
- 이분탐색
- 정렬
- 다이나믹프로그래밍
- C++
- 오블완
- 문자열
- vector
- 티스토리챌린지
- BFS
- 최소공배수
- 백트래킹
- 프로그래머스
- Sort
- Set
- N과M
- DP
- 우선순위큐
- 깊이우선탐색
- DFS
- stoi
- 분할정복
- 백준
- int
- 에라토스테네스의 체
- 그래프
- priority_queue
- 알고리즘
- 배열
- map
- 유클리드호제법
- Today
- Total
목록전체 글 (220)
안녕 세상아,
https://school.programmers.co.kr/learn/courses/30/lessons/161989 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr section 배열 정렬: 이미 정렬되어 있다고 가정해도 좋지만, 혹시나 정렬이 안 되어 있다면 정렬이 필요함그리디 접근: section에서 아직 페인트칠되지 않은 구역을 기준으로 최대한 오른쪽으로 길게 칠하면서 필요한 페인트칠 횟수를 최소화함롤러 위치 지정: section에서 아직 페인트칠하지 않은 첫 번째 구역에 롤러를 놓고, m 길이만큼 칠한다. 칠할 때마다 그 다음 칠해야 할 구역으로 이동하며 페인트칠을 반복함 #include #inc..
https://school.programmers.co.kr/learn/courses/30/lessons/42577 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr효율성을 생각하면서 풀어야한다. phone_book의 길이가 최대 1,000,000이기 때문에 2중 for문을 사용하게 되면 시간초과가 난다. 바로 아래 코드는 2중 for문을 사용하지 않고 푼 코드이다.접두사가 되기 위해서는 보통 길이가 짧은 string이 확률이 높다. 그렇기 때문에 정렬을 한 후 바로 다음 string이랑 비교를 해준다. map으로 푸는 방법도 있는데..더 공부해야될 것 같다. #include #include #inclu..
https://school.programmers.co.kr/learn/courses/30/lessons/12977 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr3중 for문으로 풀면 된다..시간 초과가 안난다..#include #include #include using namespace std;int isCheck(int sum) { int cnt = 0; for (int i = 1; i nums) { int answer = 0; for (int i = 0; i
https://school.programmers.co.kr/learn/courses/30/lessons/12921 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr간단하게 2중 for문으로 구할 수 없는 문제이다. 이유는 시간 초과..효율성이 매우 떨어진다. 주어진 조건은 n이 1000000 이하기 때문에 n이 굉장히 커진다. 해결할 수 있는 방법은 에라토스테네스의 체를 사용하면 된다. #include #include using namespace std;int solution(int n) { int answer = 0; int arr[1000..
https://school.programmers.co.kr/learn/courses/30/lessons/135808 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr점수를 내림차순으로 정렬하여 높은 점수부터 상자를 채우는 방식이다. i + m - 1이 score.size()보다 작을 때만 계산한다. 인덱스가 넘지 않기 위해!#include #include #include using namespace std;int solution(int k, int m, vector score) { int answer = 0; sort(score.begin(), sco..
c++에는 변수 n의 순열을 구할 수 있는 함수가 있다. 순열이란? 서로 다른 n개의 원소에서 r개를 뽑아 한 줄로 세우는 경우의 수이다. 순열의 갯수는 n!이다. 예를들어, 배열이 {1,2,3} 이라면 순열은 {1,2,3} {1,3,2} {2,3,1} {2,1,3} {3,1,2} {3,2,1} 이다. 기본 문법은 다음과 같다. // defaultbool next_permutation (BidirectionalIterator first, BidirectionalIterator last);// custombool next_permutation (BidirectionalIterator first, BidirectionalIterator last, Compare comp);next_permutation은..
https://school.programmers.co.kr/learn/courses/30/lessons/87946 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr완전탐색으로 풀었다. 1. exploreDungeon 함수는 주어진 던전을 차례대로 탐험한다. 2. 주어진 k보다 던전 최소 필요 피로도가 더 작으면 탐험할 수 있기 때문에 던전 소모 피로도를 빼준다. 3. 만약 최소 필요 피로도가 k보다 크면 break하고 count를 return 해준다. 4. next_permutation을 사용하기 위해서는 sort 해줘야한다. 5. answer에 exploreD..
https://swexpertacademy.com/main/code/problem/problemDetail.do?problemLevel=3&problemLevel=4&contestProbId=AV13_BWKACUCFAYh&categoryId=AV13_BWKACUCFAYh&categoryType=CODE&problemTitle=&orderBy=INQUERY_COUNT&selectCodeLang=CCPP&select-1=4&pageSize=10&pageIndex=1 SW Expert AcademySW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요!swexpertacademy.com가로, 세로, 대각선의 값을 각각 구해서 max 값을 갱신한다. 100 * 100의 배열만 주어지기 때문에 ..
https://swexpertacademy.com/main/code/problem/problemDetail.do?problemLevel=3&problemLevel=4&contestProbId=AV139KOaABgCFAYh&categoryId=AV139KOaABgCFAYh&categoryType=CODE&problemTitle=&orderBy=INQUERY_COUNT&selectCodeLang=CCPP&select-1=4&pageSize=10&pageIndex=1 SW Expert AcademySW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요!swexpertacademy.com하루 풀고 다음 문제 푸는데 멘탈 너무 털려서 며칠 헤매다가 과감하게 다음 문제로 넘어갔는데..너무 쉬어서...
https://school.programmers.co.kr/learn/courses/30/lessons/42840 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr쉽게 풀 수 있을거라고 생각했는데 arr, arr1, arr2 구분을 안해서 몇분간 삽질했던..ㅜ1. 각각의 수포자들 답변 패턴을 파악한다.2. 만약 값이 똑같다면 ans[i]++ 해준다. 3. 그 중 가장 큰 값을 구한다. (*max_element)4. 가장 큰 값과 ans값과 비교해서 만약 값이 같다면 answer에 넣어준다. 5. 값이 여러가지면 sort 해준다. #include #include ..