| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 804 人关注过本帖
标题:C/C++一个算法的问题
只看楼主 加入收藏
hlmzcj
Rank: 1
等 级:新手上路
帖 子:5
专家分:0
注 册:2007-5-4
收藏
 问题点数:0 回复次数:10 
C/C++一个算法的问题

我刚学C++在习题中遇到两个题,希望高手帮助解决,谢了~~~顺便帮解释下
(一)
输出如下形式:
A
BBB
CCCCC
DDDDDDD
CCCCC
BBB
A
(二)
有两个队比赛,每队5人,且是一对一比赛,甲队为A,B,C,D,E,乙队为,J,K,L,M,N,经过抽签来决定比赛配对名单,规定:甲队A不和乙队J比赛,M不和D,E比赛.列出所有可能的比赛名单.

搜索更多相关主题的帖子: 算法 
2007-06-03 21:33
xq0714
Rank: 1
等 级:新手上路
帖 子:34
专家分:0
注 册:2007-5-25
收藏
得分:0 
第一个问题应该很简单,你就直接输出就是拉!没有什么特定的要求吧!
第二个的话,学过离散数学或者数据结构也行!画个距阵,也是直接输出下吧!
具体的本人语言学的怎么样 .不在这现丑了!
2007-06-03 21:54
nuciewth
Rank: 14Rank: 14Rank: 14Rank: 14
来 自:我爱龙龙
等 级:贵宾
威 望:104
帖 子:9786
专家分:208
注 册:2006-5-23
收藏
得分:0 

1.LZ 是否做过
*
***
*****
*******
*****
***
*
如果你做过,那就不要再问这个了,因为是一样的道理.其中利用行号输出'A'+i-1;
2.用回朔就可以做出了.剪枝函数就是A不和乙队J比赛,M不和D,E比赛.


倚天照海花无数,流水高山心自知。
2007-06-03 22:38
白居易
Rank: 1
来 自:北京
等 级:新手上路
帖 子:28
专家分:0
注 册:2007-5-28
收藏
得分:0 
第一题的话,用嵌套循环可以作出来,还有就是if条件语句的使用,可能要烦琐 一些,自己慢慢揣摩吧,这样才会有进步!

革命尚未成功,同志仍需努力
2007-06-03 23:22
孤魂居士
Rank: 2
来 自:老A(中国地大)
等 级:论坛游民
威 望:4
帖 子:1142
专家分:18
注 册:2007-5-21
收藏
得分:0 

*
***
*****
********
*****
***
*
这个差不多 ```
前面房间有这题目``自己去看看吧``

准备用3年做个高级软件工程师 10年也做不成。准备用10年做成高级软件工程师 3年就成了QQ 群 45771086
欢迎版主...欢迎JAVA爱好者...
一起从深夜 到凌晨...
2007-06-04 00:57
hlmzcj
Rank: 1
等 级:新手上路
帖 子:5
专家分:0
注 册:2007-5-4
收藏
得分:0 
谢谢大家了
第一个我用一个数组来实现了,还可以的的,
不过第二个想了很久还是没想出来,我就听上面楼主说的,去看看离散和数据结构,谢谢了!!!1
2007-06-07 14:39
kisscjy
Rank: 1
等 级:新手上路
帖 子:217
专家分:0
注 册:2007-4-9
收藏
得分:0 

给你第2题的代码~~~

如下:

#include<iostream>
using namespace std;

void main()
{
char a[5]={'a','b','c','d','e'};

char b[5]={'j','k','l','m','n'};

for(int i=0; i<5; i++)
{
for(int j=0; j<5; j++)
{
if( a[i]=='a' && b[j]=='j' ) continue;

if( ( a[i]=='d'|| a[i]=='e') && b[j]=='m' ) continue;

cout<<a[i]<<" --> "<<b[j]<<endl;
}
}
}


每当我一晚写下70,80个程序时,你还真以为,这都是我一个人干的.....不过说真的,其实都是抄书的~~ ^@^
2007-06-07 18:36
neverDie
Rank: 1
等 级:新手上路
威 望:1
帖 子:123
专家分:0
注 册:2007-5-5
收藏
得分:0 
回复:(hlmzcj)C/C++一个算法的问题
LS

2007-06-08 17:35
jiaju111
Rank: 1
等 级:新手上路
帖 子:94
专家分:0
注 册:2007-3-27
收藏
得分:0 

第2题的代码(方法比较笨,循环次数太多)有好的方法帮忙指点一下

#include<iostream>
using namespace std;
void main()
{
int a, b, c, d, e, cnt=0;
char with[5]={'j','k','l','m','n'};


for( a=0; a<5; ++a)
{
if (a==0) continue;
for(b=0; b<5; ++b)
{
if (b==a) continue;
for(c=0; c<5; ++c)
{
if (c==a||c==b) continue;
for(d=0; d<5; ++d)
{
if (d==a||d==b||d==c||d==3) continue;
for(e=0; e<5; ++e)
{
if (e==a||e==b||e==c||e==d||e==3) continue;
cout <<"a--"<<with[a]<<'\t';
cout <<"b--"<<with[b]<<'\t';
cout <<"c--"<<with[c]<<'\t';
cout <<"d--"<<with[d]<<'\t';
cout <<"e--"<<with[e]<<endl;
++cnt;
}
}
}
}
}
cout << cnt <<endl;
}

[此贴子已经被作者于2007-6-9 10:44:27编辑过]


Everything is gonna be okay!
2007-06-09 10:43
hlmzcj
Rank: 1
等 级:新手上路
帖 子:5
专家分:0
注 册:2007-5-4
收藏
得分:0 

谢谢了!!!我好久没来上网了,谢谢大家!!!

2007-06-26 23:11
快速回复:C/C++一个算法的问题
数据加载中...
 
   



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

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