Problem:
Score : 200 points

Problem Statement

The postal code in Atcoder Kingdom is A+B+1 characters long, its (A+1)-th character is a hyphen -, and the other characters are digits from 0 through 9.

You are given a string S. Determine whether it follows the postal code format in Atcoder Kingdom.

Constraints

1≤A,B≤5

|S|=A+B+1

S consists of - and digits from 0 through 9.

Input

Input is given from Standard Input in the following format:

A B
S

Output

Print Yes if S follows the postal code format in AtCoder Kingdom; print No otherwise.

Sample Input 1

3 4
269-6650

Sample Output 1

Yes

The (A+1)-th character of S is -, and the other characters are digits from 0 through 9, so it follows the format.

Sample Input 2

1 1
---

Sample Output 2

No

S contains unnecessary -s other than the (A+1)-th character, so it does not follow the format.

Sample Input 3

1 2
7444

Sample Output 3

No

Solution in C++14 (GCC 5.4.1) (judge verdict: Accepted)

#include <string>
#include <algorithm>
#include <cctype>
#include <iostream>

using namespace std;

int A, B;

string S, c, d;

int main() {

	cin >> A >> B >> S;

	string ans = "No";
	int last = 0;
	int pos = S.find("-");
	if (pos >= 1) {
		c = S.substr(last, pos - last);
		if (A == c.length() && all_of(c.cbegin(), c.cend(), [](char c) {return isdigit(c); }))
		{
			last = pos + 1;
			d = S.substr(last, S.length() - last);
		}
		if (B == d.length() && all_of(d.cbegin(), d.cend(), [](char c) {return isdigit(c); }))
		{

			ans = "Yes";
		}
	}
	cout << ans << endl;

	return 0;
}