天天看点

蓝桥杯_note_2016蓝桥杯_2016

蓝桥杯_2016

/*
生日蜡烛
某君从某年开始每年都举办一次生日party,并且每次都要吹熄与年龄相同根数的蜡烛。
现在算起来,他一共吹熄了236根蜡烛。
请问,他从多少岁开始过生日party的?
请填写他开始过生日party的年龄数。
注意:你提交的应该是一个整数,不要填写任何多余的内容或说明性文字。
*/
#include<iostream>
#include<cstdio>
using namespace std;

int main()
{
    for(int i = ;i<;i++)
    {
        int numOfcande = ;
        for(int j = i;j<;j++)
        {
            numOfcande = numOfcande +j;
            if(numOfcande == )
            cout<<i;
        }
    }
    return ;
}
           
/*煤球数目
有一堆煤球,堆成三角棱锥形。具体:
第一层放1个,
第二层3个(排列成三角形),
第三层6个(排列成三角形),
第四层10个(排列成三角形),
....
如果一共有100层,共有多少个煤球?
请填表示煤球总数目的数字。
注意:你提交的应该是一个整数,不要填写任何多余的内容或说明性文字。
*/
#include<iostream>
using namespace std;
int main()
{
    int total = ;
    for(int i = ;i<=;i++)
    {
        int layer = ;
        for(int j = ;j<=i;j++)
        {
            layer = layer+j;
        }
        total = total + layer;  
    }
    cout<<total;
    return ;
}
           
/*
全排列算法——函数!
凑算式

     B      DEF
A + --- + ------- = 10
     C      GHI  
这个算式中A~I代表1~9的数字,不同的字母代表不同的数字。
比如:
6+8/3+952/714 就是一种解法,
5+3/1+972/486 是另一种解法。
这个算式一共有多少种解法?
注意:你提交应该是个整数,不要填写任何多余的内容或说明性文字。 
*/
#include<iostream>  
#include<algorithm>  
using namespace std;  
int main()  
{  
    int d[] = {,,,,,,,,}; 
    sort(d,d+);
    int ways = ; 
    do                             
    {  
        if(d[]+d[]*/d[]+(d[]*+d[]*+d[])*/(d[]*+d[]*+d[])==)
        ways++; 
    }while(next_permutation(d,d+));//全排列; 
    cout<<ways;
    return ;  
}