cpp
-
문제 내용https://school.programmers.co.kr/learn/courses/30/lessons/43164 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr 풀이 내용알파벳 순으로 경로 출력 위해 sort함sort한 상태로 dfs 돌며 경로 찾음경로 끝까지 갔을때(다 찾았을때)의 예외처리를 잘못해서 좀 헤맸다.. 짱ㄴㅏ.. 사실 ICN을 첨부터 push 안하고 바로 dfs 돌면서 start를 push해도 되긴하는데문제에서 고정값으로 준 ICN라 그냥 직역해서 풀었다 풀이 코드#include #include #include using namespace std;bool visit[10000+2..
[C++] 프로그래머스 lv3 여행경로 (DFS)문제 내용https://school.programmers.co.kr/learn/courses/30/lessons/43164 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr 풀이 내용알파벳 순으로 경로 출력 위해 sort함sort한 상태로 dfs 돌며 경로 찾음경로 끝까지 갔을때(다 찾았을때)의 예외처리를 잘못해서 좀 헤맸다.. 짱ㄴㅏ.. 사실 ICN을 첨부터 push 안하고 바로 dfs 돌면서 start를 push해도 되긴하는데문제에서 고정값으로 준 ICN라 그냥 직역해서 풀었다 풀이 코드#include #include #include using namespace std;bool visit[10000+2..
2025.03.03 -
문제프로그래머스 DFS/BFS - 단어 변환https://school.programmers.co.kr/learn/courses/30/lessons/43163 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr 문제 풀이단어 변환을 위한 '최소 횟수'를 구하기 위해 bfs 사용 (최단거리와 동일한 개념으로 접근)bfs를 돌며, 현재 비교하는 대상 단어와 변환 횟수를 pair로 묶어서 반복문자열간 비교를 이렇게밖에 못하나? 고민했으나..find 함수라는 것도 서치해봤지만 오히려 더 복잡해질거라 판단. 풀이 코드#include #include #include using namespace std;int answer..
[C++] 프로그래머스 lv3 단어 변환 (BFS)문제프로그래머스 DFS/BFS - 단어 변환https://school.programmers.co.kr/learn/courses/30/lessons/43163 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr 문제 풀이단어 변환을 위한 '최소 횟수'를 구하기 위해 bfs 사용 (최단거리와 동일한 개념으로 접근)bfs를 돌며, 현재 비교하는 대상 단어와 변환 횟수를 pair로 묶어서 반복문자열간 비교를 이렇게밖에 못하나? 고민했으나..find 함수라는 것도 서치해봤지만 오히려 더 복잡해질거라 판단. 풀이 코드#include #include #include using namespace std;int answer..
2025.03.03 -
하핫 돌아오는 월욜(내일)부터 하루에 세문제씩 풀기로 계획세웠는데 ㅎ 할수있겠지 ㅎ 한문제 풀고 나면 그냥 집가고싶어짐 ㅎ 무튼 .. 정답 코드 #include #include using namespace std; vector solution(int n, vector words) { vector answer; string before = words[0]; for(int i=1;i
[프로그래머스] level2 영어 끝말잇기 - c++하핫 돌아오는 월욜(내일)부터 하루에 세문제씩 풀기로 계획세웠는데 ㅎ 할수있겠지 ㅎ 한문제 풀고 나면 그냥 집가고싶어짐 ㅎ 무튼 .. 정답 코드 #include #include using namespace std; vector solution(int n, vector words) { vector answer; string before = words[0]; for(int i=1;i
2023.07.16 -
냥 정답률 높은순으로 푸는중인데 이제 점점 정답률 50%대에 가까워지는중 .. 안돼 ~ .. 무튼 풀이 과정 시행착오? 첨엔 생각하기 귀찮아서 투 포인터로 풀려고했당.. 포인터 두개 써서 둘이 일치하면 해당 자리의 char을 뭐 0으로 바꾸거나 해서 하는식으로.. 근데 그러면 좀 복잡해지더군 ㅋㅎ 가령,, a 0 0 b b a ~~ .. 위와 같은 상황이랄까 할때 뒤에서 따라오는 역할의 포인터가, 만약 0을 가리킬때? 이런 조건을 다 분기처리해야해서 쏘 귀찮 ㅋ 오히려 배로 귀찮아지길래 아 레벨투인데 절대이럴리 없다 걍 스택 써야겠다 ㅋ 했음 결론 스택으로 구현해서 풀었다 흔히 계산기? 전위표기 후위표기 (prefix postfix) 같은거 하듯이~~ 반복문 내에서 i 증가시키면서, 가리키는 곳과 스택의..
[프로그래머스] level2 짝지어 제거하기 - C++냥 정답률 높은순으로 푸는중인데 이제 점점 정답률 50%대에 가까워지는중 .. 안돼 ~ .. 무튼 풀이 과정 시행착오? 첨엔 생각하기 귀찮아서 투 포인터로 풀려고했당.. 포인터 두개 써서 둘이 일치하면 해당 자리의 char을 뭐 0으로 바꾸거나 해서 하는식으로.. 근데 그러면 좀 복잡해지더군 ㅋㅎ 가령,, a 0 0 b b a ~~ .. 위와 같은 상황이랄까 할때 뒤에서 따라오는 역할의 포인터가, 만약 0을 가리킬때? 이런 조건을 다 분기처리해야해서 쏘 귀찮 ㅋ 오히려 배로 귀찮아지길래 아 레벨투인데 절대이럴리 없다 걍 스택 써야겠다 ㅋ 했음 결론 스택으로 구현해서 풀었다 흔히 계산기? 전위표기 후위표기 (prefix postfix) 같은거 하듯이~~ 반복문 내에서 i 증가시키면서, 가리키는 곳과 스택의..
2023.07.15 -
냥 면접준비 하기 싫어서 문제 풀었다 ㅎ 풀이 과정 두가지 방법으로 가능할듯 그냥 냅다 2로 나눠가며 1의 갯수 구하기 bitset 라이브러리 활용 bitset 라이브러리를 활용해서, count()함수 사용하면 해당 이진수 중 1의 갯수 알 수 있음 정답 코드 2로 나눠가며 1의 갯수 구하기 using namespace std; int countone(int n){ int onenum=0; while(1){ if(n==0)break; if(n%2==1) onenum++; n/=2; } return onenum; } int solution(int n) { int answer = n+1; int num=countone(n); while(1){ if(num==countone(answer))break; answ..
[프로그래머스] level2 다음 큰 숫자 - C++냥 면접준비 하기 싫어서 문제 풀었다 ㅎ 풀이 과정 두가지 방법으로 가능할듯 그냥 냅다 2로 나눠가며 1의 갯수 구하기 bitset 라이브러리 활용 bitset 라이브러리를 활용해서, count()함수 사용하면 해당 이진수 중 1의 갯수 알 수 있음 정답 코드 2로 나눠가며 1의 갯수 구하기 using namespace std; int countone(int n){ int onenum=0; while(1){ if(n==0)break; if(n%2==1) onenum++; n/=2; } return onenum; } int solution(int n) { int answer = n+1; int num=countone(n); while(1){ if(num==countone(answer))break; answ..
2023.07.08 -
케케 쉬운문제만 골라풀기 케케케 정답률 높은순으로 골라풀기 케케케케 낼부턴 양심껏 레벨 높여서 풀자 ㅎ.ㅎ 프로그래머스 level 2 - 최솟값 만들기 #include #include using namespace std; bool compare(int i, int j){ // 내림차순 정렬을 위한 함수 return j
c++ sort 오름차순 내림차순 정렬케케 쉬운문제만 골라풀기 케케케 정답률 높은순으로 골라풀기 케케케케 낼부턴 양심껏 레벨 높여서 풀자 ㅎ.ㅎ 프로그래머스 level 2 - 최솟값 만들기 #include #include using namespace std; bool compare(int i, int j){ // 내림차순 정렬을 위한 함수 return j
2023.07.04 -
algorithm 라이브러리 활용 방법 아래 코드의 for문 중 else블럭과 같이 사용 (stoi: string to int 함수) 무튼 걍 쉽게말하자면, #include 하고 max(1,5) 하면 5 리턴해줄거고 min(1,5)하면 1 리턴해줄거임 굳이 int일 필요없고, string끼리도 비교 가능한듯 음수 string에 대해서는 아직 안해봄 #include #include #include #include #include using namespace std; string solution(string s) { istringstream ss(s); string strBf; vector num; int size=0; int minA,maxA; while(getline(ss,strBf,' ')){ num...
c++ 최댓값 최솟값 구하기 함수algorithm 라이브러리 활용 방법 아래 코드의 for문 중 else블럭과 같이 사용 (stoi: string to int 함수) 무튼 걍 쉽게말하자면, #include 하고 max(1,5) 하면 5 리턴해줄거고 min(1,5)하면 1 리턴해줄거임 굳이 int일 필요없고, string끼리도 비교 가능한듯 음수 string에 대해서는 아직 안해봄 #include #include #include #include #include using namespace std; string solution(string s) { istringstream ss(s); string strBf; vector num; int size=0; int minA,maxA; while(getline(ss,strBf,' ')){ num...
2023.06.23 -
getline함수와 istringstream 사용하는 방법 istringstream : 문자열을 추출해내는 작업. #include 필요 getline(istream& ls, string& str, delim) : ls: 입력스트림 object str: 입력받은 문자열을 저장할 string 객체 delim: 구분자. 아래 예에선 공백(' ') #include #include #include #include using namespace std; int main(string s) { istringstream ss(s); string strBf; vector num; // 구분자를 getline의 세번째 인수로 설정. 이 예에선 공백을 구분자로 설정함. while(getline(ss,strBf,' ')){ nu..
c++ 주어진 string split하여 vector에 넣기getline함수와 istringstream 사용하는 방법 istringstream : 문자열을 추출해내는 작업. #include 필요 getline(istream& ls, string& str, delim) : ls: 입력스트림 object str: 입력받은 문자열을 저장할 string 객체 delim: 구분자. 아래 예에선 공백(' ') #include #include #include #include using namespace std; int main(string s) { istringstream ss(s); string strBf; vector num; // 구분자를 getline의 세번째 인수로 설정. 이 예에선 공백을 구분자로 설정함. while(getline(ss,strBf,' ')){ nu..
2023.06.23