雑記・まとめ

個人的な備忘録

ITP1_7_B

なんか解説見てばかりだったので過去問精選 100 問でアルゴリズム力つけてから典型90問やろうかな

 

まずは全探索から

a + b + c = x を満たす a, b, c を探すのは3重ループでも良いけど

x - a + b = c って式変形するとループ一つ減らせるってのは過去に何かで知った

今回は工夫しなくても間に合うけどね

 

#include<bits/stdc++.h>
using namespace std;

int n, x;

int main(){

    while(true){

        cin >> n >> x;
        if(!n && !x) break;

        int cnt = 0;
        for(int i=1;i<=n;i++){
            for(int j=i+1;j<=n;j++){
                int p = x - i - j;
                if(p <= n && p > j) cnt++;
            }
        }
        cout << cnt << endl;
    }
}