Sum of Integers

整数の和 | Aizu Online Judge

こちらもに引き続き、シンプルに全通り試してみる。

int n, s;
 
int solve(int now, int left, int sum) {
    if (left == 0) {
        return sum == s;
    }
    if (now > 9) return 0;
    int res = 0;
    res+=solve(now+1, left-1, sum+now);
    res+=solve(now+1, left, sum);
    return res;
}
 
int main() {
    while (1) {
        cin >> n >> s;
        if (n==0&&s==0)break;
        cout << solve(0, n, 0) << endl;
    }
    return 0;
}