| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 571 人关注过本帖
标题:不会啊这题,完全不知道要怎么入手
只看楼主 加入收藏
gsbe1987
Rank: 1
等 级:新手上路
帖 子:64
专家分:0
注 册:2007-4-14
结帖率:100%
收藏
 问题点数:0 回复次数:7 
不会啊这题,完全不知道要怎么入手

给定等式 ABCDE
DFG
+ DFG
-------------
XYZDE

其中每个字母代表一个数字,且不同数字对应不同字母。编程求出这些数字并且打出这个数字的 算术计算竖式。
这题怎么做啊?

搜索更多相关主题的帖子: 字母 编程 
2007-05-10 19:28
YOGIOH
Rank: 1
等 级:新手上路
帖 子:102
专家分:0
注 册:2007-5-8
收藏
得分:0 
ABCDE
DFG
+ DFG
-------------
XYZDE
我怎么感觉有点问题
ABCDE 前3个数ABC
还有XYZ
和其他数完全没有关系
自己感觉上就感觉没法确定啊
假如A=0-9感觉上都没问题啊


不好意思 看错了,原来已经字母代替了10个数字了

[此贴子已经被作者于2007-5-11 6:48:09编辑过]


2007-05-10 22:25
leeco
Rank: 4
等 级:贵宾
威 望:10
帖 子:1029
专家分:177
注 册:2007-5-10
收藏
得分:0 
ABCDE+DFG+DFG=XYZDE
29786+850+850=31486

#include <iostream>
#include <algorithm>

using namespace std;

int x[10];
int used[10];

void dfs(int d)
{
if(d==10){
int a=0,i;
for(i=0;i<5;i++){
a=a*10+x[i];
}
int b=x[3];
for(i=5;i<7;i++){
b=b*10+x[i];
}
int c=0;
for(i=7;i<10;i++){
c=c*10+x[i];
}
c=(c*10+x[3])*10+x[4];
if(a+b+b==c){
printf(\"%d+%d+%d=%d\n\",a,b,b,c);
}
}
else {
for(int i=0;i<10;i++){
if(!used[i]){
used[i]=1;
x[d]=i;
dfs(d+1);
used[i]=0;
}
}
}
}

int main()
{
dfs(0);
}

2007-05-10 23:53
gsbe1987
Rank: 1
等 级:新手上路
帖 子:64
专家分:0
注 册:2007-4-14
收藏
得分:0 
还是不懂,能不能顺便把思路说一下,还有我的编译器是TC

便宜又好看的U盘,款式多多~~店铺地址:http://shop34991947.
2007-05-12 21:43
茄子公主
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2006-4-21
收藏
得分:0 
用两个数组分别存储要加的数的个十百千万等位,然后数组对应的位相加,如果超过十则向前加一位(用IF来实现)
注意细节,应该可以作出来
2007-05-12 22:03
gsbe1987
Rank: 1
等 级:新手上路
帖 子:64
专家分:0
注 册:2007-4-14
收藏
得分:0 
哦,这样偶就懂了,怎么就没想到呢~~~~~~~~

便宜又好看的U盘,款式多多~~店铺地址:http://shop34991947.
2007-05-12 22:17
YOGIOH
Rank: 1
等 级:新手上路
帖 子:102
专家分:0
注 册:2007-5-8
收藏
得分:0 
谁能帮我解释一下3楼的程序
或者给个这个题的想法
我觉得5楼说的用数组相加
但是感觉每个数组位从0-9循环应该也不会比10的10次方少多少
谁能帮我解释一下3楼的程序

2007-05-17 19:51
leeco
Rank: 4
等 级:贵宾
威 望:10
帖 子:1029
专家分:177
注 册:2007-5-10
收藏
得分:0 

深度优先搜索策略,穷举ABCDEFGXYZ的所有排列,将其存放在x[]中。
参考:http://www.baidu.com/s?tn=myie2dg&ie=gb2312&bs=DFS%CB%E3%B7%A8+%C9%FA%B3%C9%C5%C5%C1%D0&sr=&z=&cl=3&f=8&wd=DFS+%C9%FA%B3%C9%C5%C5%C1%D0&ct=0

2007-05-19 14:16
快速回复:不会啊这题,完全不知道要怎么入手
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.016458 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved