Можно как то доставать первый символ в потоке, не забирая его из него, но я забыл. Так было бы еще на 1 строчку меньше.
C++ |
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
| #include <iostream>
#include <vector>
using namespace std;
int main()
{
vector<int> nums;
vector<char> punct;
char c; int i;
while (cin.get(c))
if (isdigit(c)) {
cin.unget();
cin >> i;
nums.push_back(i);
} else {
punct.push_back(c);
}
return 0;
} |
|