[ACM_数学] Counting Solutions to an Integral Equation (x+2y+2z=n 组合种类)

http://acm.hust.edu.cn/vjudge/contest/view.action?cid=27938#problem/E

题目大意:Given, n, count the number of solutions to the equation x+2y+2z=n, where x,y,z,n are non negative integers.
解题思路:只对一个枚举由此推算出另外两个的种类,千万不要都枚举!!!

 

#include<iostream>
#include<fstream>
#include<string>
#include<string.h>
using namespace std;
int main(){
    for(long long int n;cin>>n;){
        long long int y,sum=0;
        for(y=0;y<=n/2;y++){
            sum+=(n-2*y)/2+1;
        }
        cout<<sum<<'\n';
    }
}
View Code

 

posted @ 2013-08-08 20:29  beautifulzzzz  阅读(230)  评论(0编辑  收藏  举报