자료구조 & 알고리즘/프로그래머스
Level 0. OX퀴즈
diesuki4
2023. 1. 28. 03:49
Level 0. OX퀴즈
예전에 Stack을 활용해서 다항식 파싱했던 방법이 가물가물한데 이 문제는 항의 개수가 2개로 정해져 있어 그럴 필요까지는 없었다.
istringstream을 이용해 파싱을 진행하여 해결했다.
벡터 내에서 메모리가 재할당되는 것을 막기 위해 emplace_back 대신 필요한 만큼 크기를 미리 할당하여 사용했다.
#include <iostream>
#include <vector>
#include <sstream>
using namespace std;
vector<string> solution(vector<string> quiz)
{
size_t size = quiz.size();
vector<string> answer(size);
for (int i = 0; i < size; ++i)
{
istringstream iss(quiz[i]);
int n1, n2, nResult;
char op, eq;
iss >> n1 >> op >> n2 >> eq >> nResult;
answer[i] = ((op == '+' ? n1 + n2 : n1 - n2) == nResult) ? "O" : "X";
}
return answer;
}