読者です 読者をやめる 読者になる 読者になる

Tamflexの貯蔵庫

やる気のない備忘録

aoj 0030

Sum of Integers | Aizu Online Judge

高々2^10=1024回計算する

int n, s;
int ans;
void solve(int num, int m, int sum)
{
  if(sum > s || m > 10) return;
  if(num == 0)
  {
    ans += (sum == s);
    return;
  }
  solve(num-1,m+1,sum+m);
  solve(num,m+1,sum);
}

int main()
{
  cin.tie(0);
  ios::sync_with_stdio(false);
  while (1)
  {
    scanf("%d %d",&n,&s);
    if(n==0 && s==0) break;
    ans = 0; solve(n,0,0);
    printf("%d\n",ans);
  }
  return 0;
}