일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
31 |
- 프로그래머스
- Set
- 그래프
- N과M
- 티스토리챌린지
- 유클리드호제법
- DP
- vector
- DFS
- 이분탐색
- 깊이우선탐색
- 문자열
- 분할정복
- stoi
- 최소공배수
- int
- Sort
- 배열
- 우선순위큐
- 정렬
- 백트래킹
- C++
- 다이나믹프로그래밍
- 백준
- priority_queue
- 에라토스테네스의 체
- BFS
- map
- 알고리즘
- 오블완
- Today
- Total
목록전체 글 (220)
안녕 세상아,
https://school.programmers.co.kr/learn/courses/30/lessons/12973 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.krstack을 사용하여 stk.top과 현재 s[i]값을 비교하여 풀면 간단하게 풀 수있다. 다만, 주의해야할 예외가 있는데 stk가 empty일 수 있기 때문에 예외처리를 잘 해야한다. 1. stk 스택을 선언한다. 2. for문을 돌리면서 stk.top()과 s[i]의 값을 비교한다. 3. stk.empty()가 아닐 때만 진행한다. 4. 만약 stk.top()과 s[i]가 같으면 stk.pop(..
단락 평가(short-circuit evaluation)란,논리 연산에서 왼쪽 피연산자의 값만으로 전체 표현식의 결과를 알 수 있는 경우 오른쪽 피연산자를 평가하지 않는 것을 말한다. 논리 AND (&&) 연산자:왼쪽 피연산자가 false이면, 전체 표현식은 false가 되므로 오른쪽 피연산자를 평가하지 않는다. 논리 OR (||) 연산자:왼쪽 피연산자가 true이면, 전체 표현식은 true가 되므로 오른쪽 피연산자를 평가하지 않는다. if (stk.top() == s[i] && !stk.empty()) 내가 실수한 문제이다. 단락평가에 대해 정리해야겠다고 생각한 계기.. 사실 단락평가라는 것을 처음 알았다...ㅜ(stk는 stack) 만약 내가 쓴 코드처럼 작동하려면 stk.top() == s[i..
https://school.programmers.co.kr/learn/courses/30/lessons/12945 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr피보나치 수 구하면 되는 문제!함수로 하면 시간복잡도 걸릴 수 있어서 dp로 풀면 된다. 시간복잡도도 적고 굳#include #include using namespace std;int solution(int n) { long long int answer = 0; long long int arr[100000] = {}; arr[0] = 0; arr[1] = 1; for (int..
https://school.programmers.co.kr/learn/courses/30/lessons/12926 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr소문자일 때와 대문자일 때를 나눠서 생각하면 된다. 너무..복잡하게 풀었나싶긴 하지만 생각나는건 이런 풀이 뿐.. 신경써야할 것은 z에서 1 더했을 때 a로 만들어야 한다는 것이다. 아스키코드를 사용하면 소문자가 아닌 다른 문자가 나오게 되어서, 이부분만 잘 신경쓰면 간단하게 풀 수 있다. #include #include using namespace std;string solution(string s,..
https://school.programmers.co.kr/learn/courses/30/lessons/12911 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr1. 10진수를 2진수로 바꾸는 함수 작성한다.2. 2진수 중 1의 갯수를 count 하는 함수 작성한다. 3. 주어진 n을 2진수로 바꾸는 함수에 대입한다.4. 2진수로 바꾼 후 1의 갯수를 count 하는 함수에 대입한다.5. for문을 돌리면서 주어진 n보다 크지만 2진수로 바꾼 후 1의 갯수가 같은 자연수를 찾는다. #include #include #include using namespace s..
https://school.programmers.co.kr/learn/courses/30/lessons/12924 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr 기준이 n인데 자꾸 예시인 15로 넣어서 자꾸 틀렸던..문제 자체는 간단한 편이라고 생각한다. 1. 2중 for문을 돌리며 i를 기준으로 계속 더해주면서 합이 n인 것을 찾는다. 2. 만약 cnt가 n과 같으면 answer++를 해주고 break를 한다. 3. cnt가 n보다 크면 필요 없기 때문에 break를 해준다. #include #include using namespace std;int so..
https://school.programmers.co.kr/learn/courses/30/lessons/131705 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr레벨 1 이고 number가 13 이하길래 설마설마 하고 3중 for문으로 해봤는데 됐다. 근데 만약 number 가 커지면 시간복잡도가 O(n3)이기 때문에 성능이 매우 좋지 않다. 우선 아래 코드는 3중 for문이다. #include #include #include using namespace std;int solution(vector number) { int answer = 0; ..
https://school.programmers.co.kr/learn/courses/30/lessons/12930 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr1. 짝수일 때를 판별하기 위해 index 변수를 따로 만든다. 2. 만약 s[i]가 빈칸이면 index를 0으로 초기화한다. 3. index가 짝수일 때는 toupper 해주고4. index가 홀수일 때는 tolower 해준다. (굳이 안해주고 continue 해도 됨)5. s[i]가 빈칸이 아니면 index를 ++해준다. #include #include using namespace std;strin..
https://school.programmers.co.kr/learn/courses/30/lessons/147355 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr복잡하게 생각하고 string -> int, int->string 이러면서 난리치다가 안풀려서 쉽게 생각해서 풀엇다.. 1. substr 사용하면 간단하게 풀린다. #include #include using namespace std;int solution(string t, string p) { int answer = 0; for(int i = 0; i
https://school.programmers.co.kr/learn/courses/30/lessons/68935 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr1. 10진법 3진법으로 바꾸기2. 3진법 10진법으로 바꾸기3. 1번 함수를 사용해서 3진법으로 바꾼 후 reverse 함수 사용4. reverse된 3진법을 2번 함수에 넣어서 결과 도출#include #include #include #include using namespace std;string tenToThree(int n){ if(n == 0) return "0"; st..