找回密码
 注册
广告投放 虚位以待【阿里云】2核2G云新老同享 99元/年,续费同价做网站就用糖果主机-sugarhosts.comJtti.com-新加坡服务器,美国服务器,香港服务器
查看: 702|回复: 12

[复制链接]
发表于 2004 年 10 月 19 日 19:38:28 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?注册

×
黄色房子主人养鱼
Jgwy.Com - Free Web Hosting Guide & Directory In China since 2001! Jgwy.Net-Jglt.Net
发表于 2004 年 10 月 19 日 19:41:26 | 显示全部楼层
【腾讯云】2核2G云服务器新老同享 99元/年,续费同价
我靠,头晕
Jgwy.Com - Free Web Hosting Guide & Directory In China since 2001! Jgwy.Net-Jglt.Net
回复

使用道具 举报

发表于 2004 年 10 月 19 日 19:41:28 | 显示全部楼层
哈哈养螃蟹
Jgwy.Com - Free Web Hosting Guide & Directory In China since 2001! Jgwy.Net-Jglt.Net
回复

使用道具 举报

发表于 2004 年 10 月 19 日 19:43:27 | 显示全部楼层
果然是人才出的人才问题
Jgwy.Com - Free Web Hosting Guide & Directory In China since 2001! Jgwy.Net-Jglt.Net
回复

使用道具 举报

发表于 2004 年 10 月 19 日 19:44:39 | 显示全部楼层
BT。。这些算是地理知识吧
Jgwy.Com - Free Web Hosting Guide & Directory In China since 2001! Jgwy.Net-Jglt.Net
回复

使用道具 举报

发表于 2004 年 10 月 19 日 20:07:09 | 显示全部楼层
I 服了 YOU!
Jgwy.Com - Free Web Hosting Guide & Directory In China since 2001! Jgwy.Net-Jglt.Net
回复

使用道具 举报

发表于 2004 年 10 月 19 日 20:07:28 | 显示全部楼层
【腾讯云】2核2G云服务器新老同享 99元/年,续费同价
我不养
Jgwy.Com - Free Web Hosting Guide & Directory In China since 2001! Jgwy.Net-Jglt.Net
回复

使用道具 举报

发表于 2004 年 10 月 19 日 20:07:48 | 显示全部楼层
偶属于98%的那些人
Jgwy.Com - Free Web Hosting Guide & Directory In China since 2001! Jgwy.Net-Jglt.Net
回复

使用道具 举报

发表于 2004 年 10 月 19 日 20:27:12 | 显示全部楼层
都答不出来就不用想了
$ q+ {/ F3 P- ~1 T5 `5 E反正每个面世的全是0,省电力气更好
Jgwy.Com - Free Web Hosting Guide & Directory In China since 2001! Jgwy.Net-Jglt.Net
回复

使用道具 举报

发表于 2004 年 10 月 19 日 20:32:21 | 显示全部楼层
此类东西俺一般只用电脑算+ i1 G9 k3 J. a; K, d
- `" h1 g9 f* p* O, M+ W
俺滴脑子只需要想如何让自己快快乐乐的过日子
3 A2 J" G# r. z# Z6 ?: p
0 I* q- p: U; `! \1 i9 D4 F& w: O$ A1 y- H: ~6 B" B: o3 x
----------------------------------------------------------------------------3 I/ e: _6 O/ H5 e+ f0 I
using System;
2 v; ?0 r& s9 G* D3 unamespace netsafe.math
) L, A; ]# R! t. c) s{* H  j8 x; f7 m( s$ w
public class ayst8 D9 m% o$ D+ t0 m" W6 H
{
( b( L/ Y/ `: v/ g/// <summary>* b4 k4 _% J  Z8 t$ k' k
/// 问题中的所有元素# ?: W% v4 G) x7 u- D
/// </summary>
% f3 c* G3 z" ^! E: astring[,] data= {{"黄房子","蓝房子","白房子","红房子","绿房子"},
0 H' m- v) J8 n$ J{"挪威人","英国人","德国人","丹麦人","瑞典人"},
# Y+ F& |# Y3 `0 q' t/ E. E{"DUNHILL",&quotRINCE","混合烟", &quotALL MALL","BLUE MASTER"},
* B$ E. f. S- F9 _+ M{"咖 啡","矿泉水","茶","牛奶"," 啤酒 "},- h% R# P7 a3 d' ^! U5 X
{"鱼"," 恐龙","马", "鸟","狗"}};8 }0 I: W' n, k
/// <summary>/// answer用来存放答案1 A$ V" g' d( @6 ?* t$ n. G% U
/// </summary>' V4 P4 W( ?* u$ Y; l( ?; U6 d* L3 r
int[,] answer=new int[6, 6];# T* Q) _9 k) H$ I
int[,] ALL=new int[6,122];
( q! Q/ S$ M6 |* Sint count=1;
0 M& P6 u  _8 i$ V$ Hint nLevel = 0;
  ^* ^" N. g" ?: i: Iint[] List=new int[6];5 |3 L1 k; j% ^( }* @$ M) j
public static void Main(string[] args)# h2 a% K. j) _* X) M: y
{
+ J) k; X1 R) P% U- h5 Aayst c=new ayst();$ C) m7 W6 `  U- a
c.p(); ///生成全排列到all
% M  r# M3 W8 m; M# _& T( D7 Vc.run();$ O6 ]2 t. F/ q' _
Console.Read(); /// 按任意键继续: A; i" D- @) V4 N/ d  Q4 q9 X7 _. c
}0 x; Z  |7 Q9 r7 J
void run()! ^' J3 {! b6 u1 h
{& q; I% b7 C  g% Q
int i1,i2,i3,i4,i5;///通过逻辑条件顺序的有效选择来优化程序& `# _9 W& ?& Q% {% N& x! ^4 z
for (i1=1;i1<=120;i1++)///房子9 U, w* s) T' O. V4 u/ U/ X
{8 v% F7 ]* p3 i+ T# ?" n1 `
///9 、挪威人住第一间房子  b# M& G7 h9 T4 ]5 q4 Z8 N
///14 、挪威人住在蓝房子旁边  {: r8 [& ?+ z3 f3 J2 e: X
///不满足条件就短路. S' C% @8 K( h2 X: s' R
/// 2 l" H  O! L2 H8 N3 u
if (ALL[2,i1]!=2)continue;
) ?8 E! M( e, V+ b& r7 pfor(int j=0;j<5;j++,answer[j,1]=ALL[j,i1]);2 x1 b2 Z+ p# i5 _6 F/ C
for (i2=1;i2<=120;i2++)///人种6 [7 S+ L: t2 |" P
{
& k+ `/ V. K# f' xfor(int j=0;j<5;j++,answer[j,2]=ALL[j,i2]);
% l0 Y$ K% H/ o" f///9 、挪威人住第一间房子: U9 u! o+ ]0 Y! o
if (ALL[1,i2]!=1)continue;. P1 c' t$ ?8 d! J
///1、 英国人住在红房子里
& a7 _2 w7 X; T$ C$ B///
' O  t* F: L- rif (find(1,4)!=find(2,2))continue;7 i6 \: _! Q; _" |! H
///4 、绿房子在白房子左边
& Y  R: f* g( B/// 7 c$ _% H- w! d8 C3 m/ a1 O0 }! ^
if (find(1,5)>find(1,3))continue;
! @3 ^: }# Q' xfor (i3=1;i3<=120;i3++)///烟( u6 @; n! o" H3 i$ ~& p
{
6 y) Z8 g/ o: O. I3 H' |for(int j=0;j<5;j++,answer[j,3]=ALL[j,i3]);
8 P+ z. t3 ]# V8 |: ~///13、 德国人抽PRINCE烟
% E- p+ Q! k( q2 B" Y) A/// 6 N2 _$ ]3 p- }" A/ z' O* @
if(find(2,3)!=find(3,2))continue;4 q0 }4 h0 _; r3 q+ s4 J, z+ X
///7 、黄房子主人抽DUNHILL烟
" `8 _: O( c/ W) ^0 z/// % z0 U3 z; u. G$ S1 T9 ~( @0 l
if(find(1,1)!=find(3,1))continue;$ R0 s, M, \6 Z  f3 k
for (i4=1;i4<=120;i4++)///饮料3 k  f8 L8 X. r
{
, s  q" u& d: Y4 C: x+ D2 [for(int j=0;j<5;j++,answer[j,4]=ALL[j,i4]);
: x8 C9 U$ A5 w& c6 d' [///8 、住在中间那间房子的人喝牛奶
" k$ E: y' ?" A" `0 N6 o///
7 u- I7 ?2 J( d( E1 @/ ]& hif(ALL[3,i4]!=4)continue;
5 S  ~4 h2 O2 i///5 、绿房子主人喝咖啡
% o3 r5 f" R2 G; v/ n/// 6 j6 Z7 i% X' U- i. Z1 x8 i
if (find(1,5)!=find(4,1))continue;
6 e4 m3 c3 v! w/ C+ V1 k- ?' k; @9 i- r///3 、丹麦人喝茶
! p) U" r3 l* [$ ]///
" w4 ~4 D, n3 h* b5 Sif(find(2,4)!=find(4,3))continue;5 X" |8 }* Y/ S; o. F* z/ Y
///15 、抽混合烟的人的邻居喝矿泉水 " R1 r6 f' w: d* u( i# O: T
if(Math.Abs(find(3,3)-find(4,2))!=1)continue;2 Y& S$ x7 c9 P( f/ i4 [+ l
///12 、抽BLUE MASTER烟的人喝啤酒
, Z% p( C9 n& V7 o- P2 d+ x/// 2 ?$ @; D0 H+ P$ s  Q2 C) @
if(find(3,5)!=find(4,5))continue;
1 r% ~# r! v6 U9 }for (i5=1;i5<=120;i5++)///宠物
2 e6 V- k0 y/ s0 n{
2 f, ^6 ]6 q, sfor(int j=0;j<5;j++,answer[j,5]=ALL[j,i5]);1 U) R5 t$ B6 Q( R( _8 z# x) D
///10 、抽混合烟的人住在养鱼人的旁边9 U9 G! b# l( u/ M4 r3 a' Z' D: C
/// 5 u4 p  K6 m6 n- z3 @
if(Math.Abs(find(3,3)-find(5,1))!=1)continue;' H2 e" @- p  [7 c4 T
///2 、瑞典人养了一条狗
/ D' F* S6 M  ^. k# ]6 B8 |' a: J///   p9 q  {  Z: t0 {) ^& ~5 ^
if(find(2,5)!=find(5,5))continue;* @" V. v6 y4 L  d: m/ v
///6 、抽PALL MALL烟的人养了一只鸟
3 j2 K4 i3 w' M  Q+ P* N4 ^; b///
' i2 n1 y/ R: C% N$ d5 Rif(find(3,4)!=find(5,4))continue;
. v9 |% w. P! B  d! W///11 、养马人住在DUNHILL烟的人旁边 5 M; y6 }* O0 i& Q4 {
///
- _: C, L6 G6 R5 U' Vif(Math.Abs(find(5,3)-find(3,1))!=1)continue;
& n* V2 O1 w% t3 n///
* s, k9 S( K4 {2 h* Z///能活到这里的data,当然是答案喽0 x2 L9 p" i. y* D0 P
///# |, D. P! X- H: B  q+ A" C, Q$ U
write_answer();9 D) [. M7 R- z* T; u6 O! e+ I0 S
}. P  C! Z3 }) w, I  Z
}6 w5 l( a5 o2 I0 s8 }! A
}
) S4 J1 P& @9 @2 n9 L; l}
: Z6 e% t7 l3 Q3 |}/ d7 A" J& L. W: K
}( v$ g! P& K$ [6 o% b5 h; J
/// <summary>
- G6 M8 |* F: D/// 非常典型的用递归实现排列组合算法。  `2 K* v7 n4 d4 R1 W  \! b+ b4 b& w
/// </summary>
7 C9 Y) V$ C9 I3 R0 {public void p()    
% N+ l4 l2 ^9 S2 a" A1 N{
" O! c5 P: t/ o& u. E& {& _int nCount,nJudge,key;
. _: p3 S' n) `% O3 P' l9 VnLevel++;3 e$ g: C7 N- ?. e
if(nLevel>5)2 z4 h' @5 e) c" l- P. [( M
{/ j5 s5 L6 h9 |) Z" K
writeall();///有一种排列就写到All数组里
+ u& ?9 w/ |+ S7 a4 C, o! k' XnLevel--;! Y1 z2 }6 s/ O" g- R/ }3 l  h
return;0 Q" l; I5 X, z+ G
}
- K, ?! Z4 N: b2 Vfor(nCount=1;nCount<=5;nCount++)8 s8 N9 |  T# S' u" Q/ e3 H# M
{4 ~+ V+ d4 z+ A2 d
key=0;
! ]7 k' X/ G2 X# G1 ~, a+ m5 jfor(nJudge=0;nJudge<=nLevel-1;nJudge++)
! o4 P' C/ E: a$ Dif(nCount==List[nJudge])
: b# R- v" O$ Q  v4 |{$ \1 Z& e$ Q& D- s
key=1;4 p* x  X' h8 b. R- m" K' [: ?
break;$ P9 I/ L  p; r
}
) P  j: X5 y* a$ D' Yif(key==0)0 a; S: j/ f' r! d  T4 n  ?
{
: m+ a: {% w! fList[nLevel]=nCount;
4 G5 P( n8 J4 z6 \! F- Hp();
' \* e3 Q$ M: c( c$ u! d}
0 o$ d1 _" @* j/ R0 j}8 s1 n+ O0 f% d  V
nLevel--;
7 X$ P) N. f" S9 z( V}
, Q6 S0 z: Z( }  w4 H/// <summary>
: Z8 ~% F- ~4 @0 Z; b/// 写入all数组' X. A" j. W- x# W/ U
/// </summary>( D: \2 @. `3 ~. Y5 Z
void writeall()
! a/ d% f. u: W5 |9 A{8 W  C. \1 p3 W0 Y" n
int i;9 `) b- g3 k9 f9 G4 \5 O* R
for (i=1;i<=5;i++)& \# S0 X' u$ D, H
{
4 f7 l" a4 |* B$ }* BALL[i,count]=List;5 X/ P. _: W, z. S
}
8 M% s& u2 L4 Z/ Y& u% I7 Ocount++;
. K& B0 Q* f2 r6 p}' k8 d/ P# @0 t
int find(int i,int j)0 T8 G6 h1 P4 ?( ?( m6 U# R9 |
{
1 b1 r  R8 J2 x$ J' K' p9 E6 J% gint k;
6 K" y1 f: b5 W# Ifor(k=0;k<=5;k++)% Q) m' v; ^1 ~# i5 _
{9 V- Q7 q$ l0 }" a( M9 ~
if (answer[k,i]==j)
: n+ ~0 q. w+ p: w4 w2 M{
: w! U" o: m/ \return k;5 K% h* \; [. M: M7 w3 O% _
}
; [  f  I% Y  z/ N}
4 X) t2 x3 N( X5 l/ T$ x( Hreturn -1;1 j! |: I' M, s  I* C6 ]4 v& B1 {6 c' V
}
# E1 d- {& j' ^! x) `' D% @/// <summary>
2 G8 g' Z$ F( c2 l/// 将答案打印出来% [! n/ d/ k( A' K& U
/// </summary>
7 e9 |$ _  O, a5 k% Nvoid write_answer()3 b# @( u2 }$ Q& z: }6 D' }
{& w8 Z. K, \6 y2 g
for (int i = 1;i<=5;i++)
2 N/ j8 L5 u& Y* u+ w{
# E* `( m1 M( l4 z  @: k- yfor(int j=1 ;j<=5;j++)
: b/ W6 [. Q! f{
; Z9 R9 W/ v5 Z+ x8 ]Console.Write(data[i-1,answer[j,i]-1]+",");& O  h& J5 N+ U/ Q3 m
}
- ]. _4 l/ \1 h0 R( A7 z  iConsole.WriteLine();( r2 i  V9 `, I1 y& y  B
}8 }( }. e; s! `% f) }2 _% i
Console.WriteLine();
0 i  H- [2 s9 }; u0 x% i9 C; N}
( ]; T; p  g. ~; C, @}
, C# z9 h$ k* C) [1 ?; Y: @}
Jgwy.Com - Free Web Hosting Guide & Directory In China since 2001! Jgwy.Net-Jglt.Net
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|金光论坛

GMT+8, 2025 年 2 月 2 日 00:44 , Processed in 0.031982 second(s), 21 queries .

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表