ABC050_A
文字列を分割して数値にする問題
#include <iostream> #include <cstdio> #include <string> #include <sstream> #include <vector> using namespace std; int stoi(std::string str){ int ret; std::stringstream ss; ss<<str; ss>>ret; return ret; } vector<string> split(const string &s, char delim) { /* 文字列分割してvector<string>を返す */ vector<string> elems; stringstream ss(s); string item; while (getline(ss, item, delim)) { if (!item.empty()) { elems.push_back(item); } } return elems; } int main() { string Str; vector<string> ans; int a,b; getline(cin, Str);//空白ごと1行入力 ans = split(Str,' '); a = stoi(ans[0]); b = stoi(ans[2]); if(ans[1]=="+") printf("%d\n",a+b); else printf("%d\n",a-b); return 0; }
空白を含めて一行入力したい場合は
getline(cin,str);