목록Problem Solving (88)
새발블로그
문제 https://school.programmers.co.kr/learn/courses/30/lessons/181925 풀이방법 이전 수 조작하기1에서 다른 사람의 풀이를 보고 그 방법을 적용해보았다. (map 사용했다는 뜻!) 바로 전 인덱스의 값과 비교했을 때 그 차의 값에 따른 문자를 출력해야했으므로 map의 순서를 바꿔주었다. 다음 vector 를 순회하였다~~(배열이라 쓰려다가 vector가 뭔지 몰라서 찾아봄) Vector vector 컨테이너는 자동으로 메모리가 할당되는 배열 사용방법 - #include - vector [변수이름] : vector v; 생성자와 연산자 - vector v; 비어있는 벡터 - vector v(5); 기본값(0)으로 초기화된 5개의 원소를 가지는 벡터 - ve..
문제 https://school.programmers.co.kr/learn/courses/30/lessons/181926 풀이방법 풀이 1 문제에서 요구하는 대로 함 풀이 2 STL map 사용 특정 문자에 대한 값이 변하지 않으니 맵을 사용해도 좋을 것 같아서 가져왔다. MAP : 각 노드가 key 와 value 쌍으로 이루어진 트리로, 중복을 허용하지 않음 first와 second가 있는 pair 객체로 저장되면 first -key, second-value로 저장 c++ map의 내부 구현은 레드블랙트리라합니다.... O(logn) map 특징 - 자료를 저장할 때 내부에서 자동으로 key를 중심으로 오름차순 - 내림차순 : map map이름 사용방법 - 헤더 : #include - 맵 선언 : ma..
문제 https://school.programmers.co.kr/learn/courses/30/lessons/181930 풀이방법 문제 그대로 구현...해봤는데 다른 사람의 풀이가 괜찮아서 적음 풀이1 문제 그대로~~~ 풀이2 1. set을 이용해서 중복값을 제거하였다. set.size() ==3 : 세 수가 모두 다름 set.size() ==2 : 두 수 가 같음 set.size() ==3 : 세 수가 같음 set헤더를 적어야함 #include 2. #include 를 사용해서 제곱수를 계산함 pow(숫자,2) : 제곱 수 pow(숫자,3) : 세 제곱 수 풀이1 #include #include using namespace std; int solution(int a, int b, int c) { in..
문제 https://www.acmicpc.net/problem/1008https://school.programmers.co.kr/learn/courses/30/lessons/181938 풀이방법 정수형으로 받으면 답이 안나옴 그래서 a와 b를 double형으로 입력받았다. 문제에서는 정수형으로 입력받으라했는데...되네? 출력이 소수점 이하 15자리까지 되지 않아서, 소수점 고정을 통해 값을 나타내주었다. precision : 유효숫자 표기 명령어 풀이 #include using namespace std; int main() { double a, b; cin >> a >> b; cout.precision(10); cout
문제 https://school.programmers.co.kr/learn/courses/30/lessons/181938 풀이방법 C++ algorithm 헤더를 적용해보았다. 이 김에 STL 함수 정리... 1. SORT 함수 - quick sort -> O(nlgn) - sort(start주소, end 주소) [start, end] start 포함, end 불포함 2. max 함수 - max(m, n) - 최대값 반환 3. min 함수 - min(m, n) - 최솟값 반환 풀이 #include #include #include using namespace std; int solution(int a, int b) { int answer = 0; string numA = to_string(a); strin..
문제 https://school.programmers.co.kr/learn/courses/30/lessons/181945 풀이방법 범위 기반 for문을 이용하여 문자열을 순회하였다. for (type element : element_array) 풀이 #include #include using namespace std; int main(void) { string str; cin >> str; for(char ch : str) cout
문제 https://school.programmers.co.kr/learn/courses/30/lessons/181949 풀이방법 char& 는 참초(reference) 타입을 나타냄 isupper : 대문자인지 판별 islower : 소문자인지 판별 toupper : 소문자 -> 대문자 tolower: 대문자 -> 소문자 풀이 #include #include using namespace std; int main(void) { string str; cin >> str; for (char& c : str) { if (isupper(c)) { c = tolower(c); } else if (islower(c)) { c = toupper(c); } } cout
문제 https://school.programmers.co.kr/learn/courses/30/lessons/181939 풀이방법 int -> string : to_string string -> int : stoi 풀이 #include #include using namespace std; int solution(int a, int b) { int answer = 0; string numA = to_string(a); string numB = to_string(b); string result1 = numA+numB; string result2 = numB+numA; if (result1 >=result2) { answer = stoi(result1); } else { answer = stoi(result2..