728x90
https://www.acmicpc.net/problem/1152
1152๋ฒ: ๋จ์ด์ ๊ฐ์
์ฒซ ์ค์ ์์ด ๋์๋ฌธ์์ ๊ณต๋ฐฑ์ผ๋ก ์ด๋ฃจ์ด์ง ๋ฌธ์์ด์ด ์ฃผ์ด์ง๋ค. ์ด ๋ฌธ์์ด์ ๊ธธ์ด๋ 1,000,000์ ๋์ง ์๋๋ค. ๋จ์ด๋ ๊ณต๋ฐฑ ํ ๊ฐ๋ก ๊ตฌ๋ถ๋๋ฉฐ, ๊ณต๋ฐฑ์ด ์ฐ์ํด์ ๋์ค๋ ๊ฒฝ์ฐ๋ ์๋ค. ๋ํ ๋ฌธ์์ด
www.acmicpc.net
โญ ๋ด ์์ค ์ฝ๋
#include<iostream>
#include <string>
using namespace std;
inline std::string& ltrim(std::string& s, const char* t = " \t\n\r\f\v") {
s.erase(0, s.find_first_not_of(t)); return s;
}
inline std::string& rtrim(std::string& s, const char* t = " \t\n\r\f\v") {
s.erase(s.find_last_not_of(t) + 1); return s;
}
inline std::string& trim(std::string& s, const char* t = " \t\n\r\f\v") {
return ltrim(rtrim(s, t), t);
}
int main(void) {
ios::sync_with_stdio(false);
cin.tie(NULL);
int count = 1;
string str;
getline(cin, str);
//trimํจ์๋ฅผ ์ด์ฉํ์ฌ ์๋ค ๊ณต๋ฐฑ ์ ๊ฑฐ
trim(str);
//์๋ฌด๊ฒ๋ ์
๋ ฅ๋์ง ์์ ์ผ์ด์ค
if (str[0] == '\0') {
cout << 0;
}
else {
//๋ฌธ์์ด์ ๋, ๋๋ฌธ์ ๋ง๋๊ธฐ ์ ๊น์ง
for (int i = 0; str[i] != '\0'; i++) {
//๋์ด์ฐ๊ธฐ ๊ฐ์ ์นด์ดํธ
if (str[i] == ' ') {
count++;
}
}
cout << count;
}
return 0;
}
๐ ๋ฌธ์ ํ์ด
- ๊ณ์ ํ๋ ธ์ต๋๋ค๊ฐ ๋ ์ ์๊ทธ๋ฐ๊ฐ ํ์ฐธ ์๋ํ์๋๋ฐ, ์ด์ ๋ ์๋ฌด ๋ฌธ์๋ ์ ๋ ฅ๋์ง ์์์ ๊ฒฝ์ฐ๋ฅผ ์๊ฐํ์ง ๋ชปํด์์๋ค. ์์ธ์ผ์ด์ค ์ ๊ฒฝ์ ๋ ์ฐ๋๋กํ์:(
- ์ ๋ค๋ก ์ฐ์๋ ๊ณต๋ฐฑ์ด ๋์ฌ ์๋ ์์ง ์์๊น ์ถ์ด์, trim ํจ์๋ฅผ ์ฐพ์ ๊ตฌํํ์๋๋ฐ ๋ค์๋ณด๋ ์ฐ์๋ ๊ณต๋ฐฑ์ ๋์ค์ง ์๋๋ค๊ณ ํ๋ค:( ๊ตณ์ด trim ํจ์๋ฅผ ๋ง๋ค์ง ์์๋ ํ ์ ์์๋ ๋ฌธ์ ใ ใ
728x90