循环问题2012蓝桥杯省赛第四题 奇怪的比赛(暴力解决)

最近一直在查找循环问题之类的问题,今天正好有机会和大家共享一下.

      怪奇的赛比

        某电视台举办了低碳活生大奖赛。标题的计分则规当相怪奇:

        每位选手须要答复10个问题(其编号为1到10),越面后越有难度。答对的,前当分数翻倍;答错了则扣掉与题号雷同的分数(选手必须答复问题,不答复按错误处理)。

        每位选手都有一个起步的分数为10分。

        某胜获选手终究得分刚好是100分,如果不让你看赛比进程,你能推断出他(她)哪个标题答对了,哪个标题答错了吗?

        如果把答对的记为1,答错的记为0,则10个标题的答复况情可以用仅含有1和0的串来示表。例如:0010110011 就是可能的况情。

    

    纯暴力,因为个每循环只有0和1两个选择,虽然是10层循环,但其实总数才1024次,当然,也可以用二进制来做,代码简练很多,但是个人得觉,赛比的时候,别去想那么庞杂的算法,能满意的就能够了。

    每日一道理
有一首诗最为动人,那就是青春;有一段人生最美丽,那就是青春;有一道风景最为亮丽,那就是青春。青春,不要说已疲惫,也许你的幻想曾被现实无情毁灭,也许你的追求毫无结果,但你应该相信,没有寒风的洗礼,哪来万紫千红的春天,没有心的耕耘,哪有累累硕果?

    

/*2012蓝桥杯省赛第四题
作者:陈佳润
2013-04-30*/
#include<iostream>
using namespace std;

void main(){
	for(int q=0;q<=1;q++)
	for(int w=0;w<=1;w++)
	for(int e=0;e<=1;e++)
	for(int r=0;r<=1;r++)
	for(int t=0;t<=1;t++)
	for(int y=0;y<=1;y++)
	for(int u=0;u<=1;u++)
	for(int i=0;i<=1;i++)
	for(int o=0;o<=1;o++)
	for(int p=0;p<=1;p++)
	{
		int sum=10;
		q==0?sum-=1:sum*=2;
		w==0?sum-=2:sum*=2;
		e==0?sum-=3:sum*=2;
		r==0?sum-=4:sum*=2;
		t==0?sum-=5:sum*=2;
		y==0?sum-=6:sum*=2;
		u==0?sum-=7:sum*=2;
		i==0?sum-=8:sum*=2;
		o==0?sum-=9:sum*=2;
		p==0?sum-=10:sum*=2;
		if(sum==100)
			cout<<q<<w<<e<<r<<t<<y<<u<<i<<o<<p<<endl;
	}
}

文章结束给大家分享下程序员的一些笑话语录: 腾讯总舵主马化腾,有人曾经戏称如果在Z国选举总统,马化腾一定当选,因为只要QQ来一个弹窗”投马总,送Q币”即可。

posted @ 2013-04-30 18:20  坚固66  阅读(364)  评论(0编辑  收藏  举报