https://www.acmicpc.net/problem/3613
풀이:
- java 변수면 c++로 c++ 이면 java로 변경
- 예외처리
코드:
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
42
43
|
#include <iostream>
#include <string.h>
using namespace std;
int main(void) {
char a[201];
char b[201] = {'\n'};
bool java = false;
bool cplus = false;
bool ero = true;
cin >> a;
int t = 0;
for (int i = 0; i < strlen(a); i++) {
if (65 <= (int)a[i] && (int)a[i] <= 90) {
if (i == 0 || cplus == true) {
ero = false;
break;
}
b[t] = '_';
t++;
b[t] = a[i] + 32;
java = true;
}
else if (a[i] == '_') {
if (i == 0 || i == strlen(a)-1 || a[i + 1] == '_' || java == true || (65 <= (int)a[i + 1] && (int)a[i + 1] <= 90)) {
ero = false;
break;
}
b[t] = a[i + 1] - 32;
i++;
cplus = true;
}
else
b[t] = a[i];
t++;
}
if (ero == false)
cout << "Error!" << endl;
else
cout << b << endl;
return 0;
}
|