Xóa các ký tự cấm: ':', '?', '\', '/', '<', '>', '|', '*' khỏi chuỗi. Ví dụ:
Input: "Hello: Welco*me/ to Tu>torials point|." Output: "Hello Welcome to Tutorials point."
Cách tiếp cận
Duyệt chuỗi, dùng switch-case kiểm tra ký tự cấm. Nếu cấm → bỏ qua (ghi đè bằng ký tự tiếp theo), ngược lại giữ lại.
Ví dụ
#include <bits/stdc++.h>
using namespace std;
void removeforbidden(char* str) {
int j = 0, n = strlen(str);
for (int i = 0; i < n; i++) {
switch (str[i]) {
case '/': case '\\': case ':': case '?':
case '"': case '<': case '>': case '|': case '*':
str[j] = '\0'; break; // bỏ qua
default:
str[j++] = str[i];
}
}
for (int i = 0; i < n; i++) cout << str[i];
}
int main() {
char str[] = "Hello: Welco*me/ to Tu>torial?s point|.";
removeforbidden(str);
return 0;
}
Kết quả
Hello, Welcome to Tutorials point.
Kết luận
Xóa ký tự cấm khỏi chuỗi bằng switch-case duyệt một lần O(n). Code C++ mẫu.