보통 이런식으로 코드를 작성했는데,
#include <string>
#include <vector>
using namespace std;
string solution(string s) {
string answer = "";
if(s.size() % 2)
answer.push_back(s[s.size() / 2]);
else {
answer.push_back(s[s.size() / 2 - 1]);
answer.push_back(s[s.size() / 2]);
}
return answer;
}
나누기 2같은 경우는 곱하기 0.5로 바꿔서 cpu 사이클을 좀 줄이는 습관을 들이고, 모듈러 연산 또한 비트 연산으로 최적화를 하는 습관을 들여야할 것 같다.
그리고 push_back좀 그만쓰고 substr로 slicing하는 습관 좀 들여야할 것 같다..
#include <string>
#include <vector>
using namespace std;
string solution(string s) {
return s.size() & 1 ? s.substr(s.size() * 0.5, 1) : s.substr(s.size() * 0.5 - 1, 2);
}