맨날 까먹고 헷갈려하는거 정리정리 ..
sort 함수
#include <vector>
#include <algorithm>
...
vector<int> 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)
참고) 종종 하는 실수 ㅋ 아스키코드 관련 char과 int
vector<int> newArr;
string arr=to_string(long long n);
for(int i=0;i<arr.size();i++){
newArr.push_back(arr[i]-'0');
// arr[i]는 char이니까 '0'을 빼줘야 int형 숫자로 변환~~
}
sqrt 제곱근 함수
#include <cmath>
리턴되는 값은 항상 double타입임 (int 아님)
그럼 제곱근이 정수인지 아닌지 알고싶으면? 아래처럼
sqrt(n)==int(sqrt(n))