2015年蓝桥杯省赛B组第3题--三羊献瑞
三羊献瑞
观察下面的加法算式:
祥 瑞 生 辉
+ 三 羊 献 瑞
-------------------
三 羊 生 瑞 气
(如果有对齐问题,可以参看【图1.jpg】)
其中,相同的汉字代表相同的数字,不同的汉字代表不同的数字。
请你填写“三羊献瑞”所代表的4位数字(答案唯一),不要填写任何多余内容。
#include<stdio.h>
#include<string.h>
#include<ctype.h>
#include<math.h> int a[10],b[10],c[10];
void aa(int n)
{
int i=0;
while(n>0){
a[i++]=n%10;
n/=10;
}
}
void bb(int n)
{
int i=0;
while(n>0){
b[i++]=n%10;
n/=10;
}
}
int cc(int n)
{
int i=0;
while(n>0){
c[i++]=n%10;
n/=10;
}
if(i!=5)
return 0;
else
return 1;
}
int a1()
{
int i,j;
for(i=0;i<4;i++){
for(j=0;j<5;j++){
if(i!=j&&j<4&&a[i]==a[j])
return 0;
if(i!=2||j!=0){
if(j<4&&a[i]==b[j])
return 0;
}
if(i==0||i==3){
if(j!=1&&j!=2){
if(a[i]==c[j])
return 0;
}
}
}
}
return 1;
}
int bb()
{
int i,j;
for(i=0;i<4;i++){
for(j=0;j<5;j++){
if(j>i&&j<4&&b[i]==b[j])
return 0;
if(i==1&&b[i]==c[j])
return 0;
}
}
return 1;
}
int c1()
{
int i,j;
for(i=0;i<5;i++){
for(j=i+1;j<5;j++){
if(c[i]==c[j])
return 0;
}
}
}
int main ()
{
int i,j;
for(i=1000;i<=9999;i++){
for(j=1000;j<=9999;j++){
memset(c,0,sizeof(c)); if(cc(i+j)){
memset(a,0,sizeof(a));
memset(b,0,sizeof(b));
aa(i);
bb(j);
if(b[3]==c[4]&&b[2]==c[3]&&a[1]==c[2]&&a[2]==c[1]&&b[0]==a[2]&&a1()&&bb()&&c1()){
printf(" %d\n",i);
printf("+%d\n",j);
printf("-----------\n");
printf("%d\n\n",i+j); }
}else{ } }
}
return 0;
}
最后答案为:1085
代码运行结果如下:
2015年蓝桥杯省赛B组第3题--三羊献瑞的更多相关文章
- 2015年蓝桥杯省赛A组c++第5题(回溯算法填空)
/* 1,2,3…9 这九个数字组成一个分数,其值恰好为1/3,如何组法? 下面的程序实现了该功能,请填写划线部分缺失的代码. */ #include <stdio.h> void tes ...
- 2015年蓝桥杯省赛A组c++第8题(迭代法)
/* 乐羊羊饮料厂正在举办一次促销优惠活动.乐羊羊C型饮料,凭3个瓶盖可以再换一瓶C型饮料, 并且可以一直循环下去(但不允许暂借或赊账). 请你计算一下,如果小明不浪费瓶盖,尽量地参加活动,那么,对于 ...
- 2015年蓝桥杯省赛A组c++第4题
/* StringInGrid函数会在一个指定大小的格子中打印指定的字符串. 要求字符串在水平.垂直两个方向上都居中. 如果字符串太长,就截断. 如果不能恰好居中,可以稍稍偏左或者偏上一点. 下面的程 ...
- 2015年蓝桥杯省赛A组c++第3题
/* 小明发现了一个奇妙的数字.它的平方和立方正好把0~9的10个数字每个用且只用了一次. 你能猜出这个数字是多少吗? 请填写该数字,不要填写任何多余的内容. */ #include<cstdi ...
- 2015年蓝桥杯省赛A组c++第1题
/* 方程: a^2 + b^2 + c^2 = 1000 这个方程有整数解吗?有:a,b,c=6,8,30 就是一组解. 你能算出另一组合适的解吗? 请填写该解中最小的数字. 注意:你提交的应该是一 ...
- 第七届蓝桥杯省赛javaB组 第七题剪邮票
剪邮票 如[图1.jpg], 有12张连在一起的12生肖的邮票.现在你要从中剪下5张来,要求必须是连着的.(仅仅连接一个角不算相连)比如,[图2.jpg],[图3.jpg]中,粉红色所示部分就是合格的 ...
- 第七届蓝桥杯省赛JavaB组——第十题压缩变换
题目: 压缩变换小明最近在研究压缩算法.他知道,压缩的时候如果能够使得数值很小,就能通过熵编码得到较高的压缩比.然而,要使数值很小是一个挑战.最近,小明需要压缩一些正整数的序列,这些序列的特点是,后面 ...
- 52-2018 蓝桥杯省赛 B 组模拟赛(一)java
最近蒜头君喜欢上了U型数字,所谓U型数字,就是这个数字的每一位先严格单调递减,后严格单调递增.比如 212212 就是一个U型数字,但是 333333, 9898, 567567, 313133131 ...
- 2021蓝桥杯省赛B组(C/C++)E.路径【最短路DP】
2021蓝桥杯省赛B组题目(C/C++)E.路径 最短路径, 因为变化情况比较多, 所以开始想的是深搜, 但是太慢了, 跑不出来, 后来就想着优化一下, 有的地方到另一个地方可能会考虑很多遍, 于是考 ...
随机推荐
- 深入理解JavaScript的变量作用域
在学习JavaScript的变量作用域之前,我们应当明确几点: JavaScript的变量作用域是基于其特有的作用域链的. JavaScript没有块级作用域. 函数中声明的变量在整个函数中都有定义. ...
- Leetcode ——Lowest Common Ancestor of a Binary Tree
Question Given a binary tree, find the lowest common ancestor (LCA) of two given nodes in the tree. ...
- thymeleaf和easyui配合可能出现的错误
thymeleaf和easyui 在easyui的内页,不再使用th:href引入静态资源文件. 在easyui页面中,script执行easyui自己的方法要加入: <script th:in ...
- Java Session 会话技术
什么是Java Session? 大图:http://images2017.cnblogs.com/blog/1030087/201712/1030087-20171223235950881-1310 ...
- Apache Kylin1.5.2.1之订单案例详细构建流程
转:http://blog.itpub.net/30089851/viewspace-2122586/ 一.Hive订单数据仓库构建1. 创建事实表并插入数据 DROP TABLE IF EXISTS ...
- NOI 16 买房子
买房子(NOI 16) 总时间限制: 1000ms 内存限制: 65536kB 描述 某程序员开始工作,年薪N万,他希望在中关村公馆买一套60平米的房子,现在价格是200万,假设房子价格以每年百分之K ...
- JS进阶系列之作用域链
在之前写的进阶系列里面,提到了执行上下文在创建阶段,要创建变量对象.确定作用域链还有确定this的指向,本次将重点讲解一下作用域链. JavaScript代码的执行过程 在讲解作用域链之前,首先了解一 ...
- c++ 容器元素填充(fill)
#include <iostream> // cout #include <algorithm> // fill #include <vector> // vect ...
- Java Selenium 笔记
目录一.基本语句 1.循环控制(break,continue) 3.字符的替换(replace,repalceFirst,replaceAll,regex) 4.字符串的连接("+" ...
- 未能加载文件或程序集“Newtonsoft.Json, Version=4.5.0.0
错误描述: 错误原因: 因为引用出了问题,在你的程序集里面找不到的Newtonsoft.Json,所以它就拿从系统盘里面预装的旧版的来用,结果就报版本错误了. 解决方案: web.config 的 ...