๋ฌธ์
์ํ๋ฒณ ๋์๋ฌธ์๋ก ๋ ๋จ์ด๊ฐ ์ฃผ์ด์ง๋ฉด, ์ด ๋จ์ด์์ ๊ฐ์ฅ ๋ง์ด ์ฌ์ฉ๋ ์ํ๋ฒณ์ด ๋ฌด์์ธ์ง ์์๋ด๋ ํ๋ก๊ทธ๋จ์ ์์ฑํ์์ค. ๋,์๋ฌธ์ ๊ตฌ๋ถ X
์์ ์ ์ถ๋ ฅ
์ ๋ ฅ
Mississipi
์ถ๋ ฅ
?
์ฝ๋
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
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
|
#include <iostream>
using namespace std;
int main() {
char word[1000001]={" ",};
char mostAlpha[26]={" ",}; //์ํ๋ฒณ ๊ฐฏ์๊ฐ 26๊ฐ์ด๋ฏ๋ก
int repetNum[26]={0,}; //๋๋ฌธ์ ์๋ฌธ์ ํฉํ๋ฉด 52
int idx=0,alphaCount=0;
bool isIncrease=false;
scanf("%s",word);
while(word[idx]!='\0'){
int idxSame=0;
if(word[idx]>=97) word[idx]-=32; //์๋ฌธ์์ผ ๊ฒฝ์ฐ ์์คํค์ฝ๋ 32๋ฅผ ๋นผ์ฃผ์ด ๋๋ฌธ์๋ก ๋ณํ
if(alphaCount>=1){
for(int i=0;i<alphaCount;i++){
//๊ฐ์ ๊ฒ ์๋์ง ์ฒดํฌ ๋ฐ ๊ฐ์ ์๋ฆฌ์ ๋ฐฐ์ด ๋ฒํธ ์ ์ฅ
if(word[idx]==mostAlpha[i]){
isIncrease=false;
idxSame=i;
break;
}
else{
isIncrease=true;
}
}
if(isIncrease){ //for๋ฌธ์ด ๋๋๊ณ alphaCount๋ฅผ ๋ํด์ฃผ์ด์ผํ๊ธฐ ๋๋ฌธ
mostAlpha[alphaCount]=word[idx];
repetNum[alphaCount]=1;
alphaCount++; //๊ทธ๋ ์ง ์์ผ๋ฉด ๋ ๋ง์ for๋ฌธ์ ๋ฐ์์ํด
}
else
{
repetNum[idxSame]++; //์๋๋ฉด์ ๊ฐ์๊ฒ์ ++ํด์ค
}
}
else
{
mostAlpha[0]=word[idx];
repetNum[0]=1;
alphaCount++;
}
idx++;
}
//์ ์ผ ์ซ์๊ฐ ํฐ ๊ฒ์ ๋ฝ์
int mostNum=0,mostNumIdx=0;
bool isDupli=false;
for(int i=0;i<alphaCount;i++){
if(mostNum<repetNum[i]){
mostNum=repetNum[i];
isDupli=false; //์ต๋๊ฐ์ด ๋ฐ๋๊ฒฝ์ฐ false
mostNumIdx=i;
}
else if(mostNum==repetNum[i]&&repetNum[i]>1){
isDupli=true; //๊ฐ์ ์ต๋๊ฐ์ด ์๋ค๋ฉด true, ํ์ง๋ง 1์ด๊ณผ์ฌ์ผํจ
}
}
if(isDupli){
printf("?");
}
else{
printf("%c",mostAlpha[mostNumIdx]);
}
return 0;
}
|
cs |
*๊ฐ๋จํ ํด์ค*
์ํ๋ฒณ๊ฐฏ์๋งํผ์ ๋ฐฐ์ด์ ๋ง๋ค์ด์ ๋ฌธ์์ด์ ์ฒดํฌํ์ฌ ๊ฐฏ์๋งํผ ์ ์ฅํ ํ 45~56๋ฒ ๋ผ์ธ์์ ์ ์ผ ํฐ ์ํ๋ฒณ์ ๋ฝ๋๋ค
๋๋จธ์ง๋ ์ฃผ์์ ํตํด ์ค๋ช ํด๋์๋ค
์ด ์ฝ๋๋ณด๋ค ํจ์ฌ ๋น ๋ฅธ ๋ฐฉ๋ฒ์ด ์์ง ์์๊น ์ถ๊ธดํ๋ค
*๋ฉ๋ชจ๋ฆฌ*
2840KB
*์๊ฐ*
36ms
*์ธ์ด*
C++14
*์ฝ๋๊ธธ์ด*
1878B
*์ด ๋ฐฉ๋ฒ๋ง์ด ๋ง๋ ์ ๋ต์ ์๋๋๋ค.
ํจ์ฌ ์ข๊ณ ๋น ๋ฅธ ๋ค๋ฅธ ์๊ณ ๋ฆฌ์ฆ์ ๊ตฌํํ ์ ์์ต๋๋ค.
์๊ณ ๋ฆฌ์ฆ ๊ณต๋ถํ์๋ ๋ถ๋ค ํ์ดํ ! '0'/*
'์๊ณ ๋ฆฌ์ฆ > BaekJoon' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[C++] BOJ 1260๋ฒ: DFS์ BFS (2) | 2022.03.11 |
---|---|
[C++] BOJ 10845๋ฒ: ํ (0) | 2022.01.18 |
BOJ 2675๋ฒ : ๋ฌธ์์ด ๋ฐ๋ณต (0) | 2021.01.28 |
BOJ 10809๋ฒ: ์ํ๋ฒณ ์ฐพ๊ธฐ (0) | 2021.01.22 |
BOJ 11720๋ฒ: ์ซ์์ ํฉ (0) | 2020.10.23 |