AOJ基础题 ITP1_7_B How many ways?

How many ways?

Write a program which identifies the number of combinations of three integers which satisfy the following conditions:

  • You should select three distinct integers from 1 to n.
  • A total sum of the three integers is x.

For example, there are two combinations for n = 5 and x = 9.

  • 1 + 3 + 5 = 9
  • 2 + 3 + 4 = 9

Input

The input consists of multiple datasets. For each dataset, two integers n and x are given in a line.

The input ends with two zeros for n and x respectively. Your program should not process for these terminal symbols.

Constraints

  • 3 ≤ n ≤ 100
  • 0 ≤ x ≤ 300

Output

For each dataset, print the number of combinations in a line.

Sample Input

5 9
0 0

Sample Output

2

問題を解く

#include <stdio.h>
#include <math.h>
#include <iostream>
#include <iomanip>
using namespace std;

int main()
{
    int n = 0;
    int x = 0;
    int count = 0;

    while (true) {
        cin >> n >> x;

        if (n == 0 && x == 0) break;

        count = 0;

        for (int i = 1; i < n + 1; i++)
        {
            for(int j = 1; j < n + 1; j++)
            {
                for (int k = 1; k < n + 1; k++)
                {
                    if(i+j+k==x && i!=j && i!=k && j!=k) count++;
                }
            }
        }
         cout << count/6 << endl;

    }


    return 0;
}