본문 바로가기

반응형

Algorithm_BOJ(백준)/문자열

(36)
[백준 10809 c++ VO] 알파벳 찾기 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 32 #define _CRT_SECURE_NO_WARNINGS #include #include #include #include // memset 헤더 #include using namespace std; // [백준 10809 c++ VO] 알파벳 찾기 // 문제: a ~z 까지 문자 있으면 포함되는 인덱스 출력 // 접근: string으로 입력하고 str.find() 함수 이용해서 위치 출력 // 접근2: 문자열 완탐하며 각 알파벳 처음 나왔으면 위치 저장 후 출력 // 시간복잡도: // 풀이: //개념: //// s.find(i) 는 찾는 문자의 인덱스..
[백준 9086 c++ O] 문자열 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 #define _CRT_SECURE_NO_WARNINGS #include #include #include #include // memset 헤더 #include using namespace std; // [백준 9086 c++ O] 문자열 // 문제: // 접근: // 시간복잡도: // 풀이1: int n; string s; int main() { ios::sync_with_stdio(false); // 계산시간 단축 // cin,scanf 같이 쓰면 오류 cin.tie(nullptr); cout.tie(nullptr);// 입출력 시간 단축 // 이것을 쓰면 scanf,printf..
[백준 1357 c++ O] 뒤집힌 덧셈 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 #define _CRT_SECURE_NO_WARNINGS #include #include #include #include // memset 헤더 #include using namespace std; // [백준 1357 c++ O] 뒤집힌 덧셈 // 문제: // 접근: // 시간복잡도: // 풀이1: string a, b; int main() { ios::sync_with_stdio(false); // 계산시간 단축 // cin,scanf 같이 쓰면 오류 cin.tie(nullptr); cout.tie(nullptr);// 입출력 시간 단축 // 이것을 쓰면 scan..
[백준 4458 c++ O] 첫 글자를 대문자로 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 #define _CRT_SECURE_NO_WARNINGS #include #include #include #include // memset 헤더 #include using namespace std; // [백준 4458 c++ O] 첫 글자를 대문자로 // 문제: // 접근: 아스키 코드로 직접 변환 // 시간복잡도: // 풀이1: #define MAX 10 int n; string s; int main() { ios::sync_with_stdio(false); // 계산시간 단축 // cin,scanf 같이 쓰면 오류 cin.tie(nullptr); cout.tie(nu..
[백준 6996 c++ O] 애너그램 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 32 33 34 35 36 37 38 39 40 41 #define _CRT_SECURE_NO_WARNINGS #include #include #include #include // memset 헤더 using namespace std; // [백준 6996 c++ O] 애너그램 // 문제: // 접근1: 애너그램 -> 각 알파벳의 갯수가 같으면 애너그램 // 접근2: 애너그램 -> 두 문자열 정렬해서 같으면 애너그램 // 시간복잡도: 접근1 > n; while (n--) { bool ok = 1; memset(cnta, 0, sizeof(cnta)); me..
[백준 11328 c++ O] Strfry 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 32 33 34 35 36 37 38 39 40 41 #define _CRT_SECURE_NO_WARNINGS #include #include #include #include // memset 헤더 #include using namespace std; // [백준 11328 c++ O] Strfry // 문제: // 접근: 애너그램 -> 결국 공통된 문자의 갯수 같으면 애너그램 가능 // 풀이: // 각 문자열의 알파벳의 갯수 저장 // 문자의 갯수가 맞지 않으면 불가능/ 맞으면 가능 #define MAX 30 int n; string a, b; int c..
[백준 1919 c++ O] 애너그램 만들기 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 32 33 34 #define _CRT_SECURE_NO_WARNINGS #include #include #include #include // memset 헤더 #include using namespace std; // [백준 1919 c++ O] 애너그램 만들기 // 문제: // 접근: 애너그램 -> 결국 같은 공통된 문자의 갯수가 같은 것 제외는 버림 // 풀이: // 각 문자의 갯수 저장 후 공통되지 않는 문자 갯수 합 구하기 #define MAX 30 string a, b; int cnta[MAX], cntb[MAX]; int sum = 0; int..
[백준 13297 c++ O] Quick Estimates 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 #define _CRT_SECURE_NO_WARNINGS #include #include #include #include // memset 헤더 using namespace std; // [백준 13297 c++ O] Quick Estimates // 문제: // 접근: 문자열 길이 구하기 -> str.size() 이용 // 시간복잡도: O(n) = 100 // 풀이: string a; int n; int main() { ios::sync_with_stdio(false); // 계산시간 단축 // cin,scanf 같이 쓰면 오류 cin.tie(nullptr);..

반응형