C++
-
맨날 까먹고 헷갈려하는거 정리정리 .. sort 함수 #include #include ... vector newArr; sort(newArr.begin(), newArr.end(),greater()); sort함수 시간복잡도는 n log n sort 정렬시 인자를 배열로 줄땐 sort(arr,arr+n); sort 정렬시 인자를 벡터로 줄땐 sort(v.begin(), v.end()); 내림차순 sort 내림차순 정렬을 하고싶을땐 sort( ~ , ~, greater() ); 이렇게 세번째 인수로 greater() 함수 넣어주기 문자 long long으로 변환 string to long long stoll(string); long long to string to_string(long long) 참고) 종..
[C++] sort, greater<>, stoll, 숫자를 문자열로, sqrt맨날 까먹고 헷갈려하는거 정리정리 .. sort 함수 #include #include ... vector newArr; sort(newArr.begin(), newArr.end(),greater()); sort함수 시간복잡도는 n log n sort 정렬시 인자를 배열로 줄땐 sort(arr,arr+n); sort 정렬시 인자를 벡터로 줄땐 sort(v.begin(), v.end()); 내림차순 sort 내림차순 정렬을 하고싶을땐 sort( ~ , ~, greater() ); 이렇게 세번째 인수로 greater() 함수 넣어주기 문자 long long으로 변환 string to long long stoll(string); long long to string to_string(long long) 참고) 종..
2023.09.28 -
하핫 돌아오는 월욜(내일)부터 하루에 세문제씩 풀기로 계획세웠는데 ㅎ 할수있겠지 ㅎ 한문제 풀고 나면 그냥 집가고싶어짐 ㅎ 무튼 .. 정답 코드 #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 -
https://softeer.ai/practice/info.do?idx=1&eid=413 Softeer 연습문제를 담을 Set을 선택해주세요. 취소 확인 softeer.ai easy~ 라고 하기엔 풀이 시작을 어케할지 나름 꽤 고민했다 // N=1 2 3 4 .... // 2+1 3+2 5+4 9+8 ... // (2+1)^2 (3+2)^2 (5+4)^2 (9+8)^2 ... #include #include using namespace std; int N,tot; int main(int argc, char** argv) { int beforeDot=2; cin >> N; // 2+13+25+4 9+8 ... // (2+1)^2(3+2)^2(5+4)^2(9+8)^2 ... for (int i = 1; i
[C++] 소프티어 Softeer - 지도 자동 구축https://softeer.ai/practice/info.do?idx=1&eid=413 Softeer 연습문제를 담을 Set을 선택해주세요. 취소 확인 softeer.ai easy~ 라고 하기엔 풀이 시작을 어케할지 나름 꽤 고민했다 // N=1 2 3 4 .... // 2+1 3+2 5+4 9+8 ... // (2+1)^2 (3+2)^2 (5+4)^2 (9+8)^2 ... #include #include using namespace std; int N,tot; int main(int argc, char** argv) { int beforeDot=2; cin >> N; // 2+13+25+4 9+8 ... // (2+1)^2(3+2)^2(5+4)^2(9+8)^2 ... for (int i = 1; i
2023.05.27