gpt4 book ai didi

c# - boolean 变量的所有可能组合

转载 作者:塔克拉玛干 更新时间:2023-11-03 03:28:46 25 4
gpt4 key购买 nike

我正在尝试寻找一种算法来执行以下操作:想象一下我有 10 个 boolean 变量,我想尝试每一种组合,因为我的目标是找到任何组合,这将作为我的方法之一的结果为真(这种方法有很多限制,这就是我想测试的原因每种可能的组合,如果没有可以解决问题的组合,那么我想通知用户)。我希望它是可以理解的!

最佳答案

试试这个:

for (int i = 0; i < (1 << 10); i++)
{
bool b1 = (i & (1 << 0)) != 0;
bool b2 = (i & (1 << 1)) != 0;
bool b3 = (i & (1 << 2)) != 0;
bool b4 = (i & (1 << 3)) != 0;
...

if (MyMethod(b1, b2, b3, b4, ...))
{
// Found a combination for which MyMethod returns true
}
}

当然,您也可以使用 LINQ:

var result = from b1 in new[] { false, true }
from b2 in new[] { false, true }
from b3 in new[] { false, true }
from b4 in new[] { false, true }
...
where MyMethod(b1, b2, b3, b4, ...)
select new { b1, b2, b3, b4, ... };

关于c# - boolean 变量的所有可能组合,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12488876/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com