C# 高级排列场景

2023-11-29

我试图弄清楚如何在给定以下信息的情况下找到所有组合:

我从一个 JSON 数据集开始:

var choices = { 1: {'Q': 100, 'R': 150, 'W' : 250, 'T', 30},
                2: {'Q': 90, 'R': 130, 'W' : 225, 'T', 28},
                3: {'Q': 80, 'R': 110, 'W' : 210, 'T', 25},
                4: {'Q': 70, 'R': 90, 'W' : 180, 'T', 22},
                5: {'Q': 60, 'R': 70, 'W' : 150, 'T', 18},
                6: {'Q': 50, 'R': 50, 'W' : 110, 'T', 15},
                7: {'Q': 40, 'R': 30, 'W' : 80, 'T', 11},
                8: {'Q': 30, 'R': 25, 'W' : 50, 'T', 8},
                9: {'Q': 20, 'R': 10, 'W' : 25, 'T', 5},
                10: {'Q': 10, 'R': 5, 'W' : 15, 'T', 3}
              };

我想要弄清楚的是如何获取这个数据集,并在为每行选择“Q”、“R”、“W”或“T”元素时生成所有可能的组合。

所以我希望我的最终结果会是这样的

var allChoices = { 0: {1: {'Q': 100},
                       2: {'R': 130},
                       3: {'W' : 210},
                       4: {'W' : 180},
                       5: {'T', 18},
                       6: {'R': 50,},
                       7: {'Q': 40,},
                       8: {'T', 8},
                       9: {'R': 10},
                      10: {'W' : 15},
                     },
                 1: {...},
                 ...
                 1048576: {...}

              };

我使用 JSON 是因为我认为它是最容易可视化的,但是有人知道我如何在 C# 中实现这一点吗?

如果这还不够清楚,请告诉我,我很难弄清楚如何准确地提出这个问题。


这是一个以 4 为基数的 10 位数字。

class Program
{
    static void Main(string[] args)
    {
        int baseN = 4;
        int maxDigits = 10;
        var max = Math.Pow(baseN, maxDigits);
        for (int i = 0; i < max; i++)
        { // each iteration of this loop is another unique permutation
            var digits = new int[maxDigits];
            int value = i;
            int place = digits.Length - 1;
            while (value > 0)
            {
                int thisdigit = value % baseN;
                value /= baseN;
                digits[place--] = thisdigit;
            }

            int choice = 0;
            foreach (var digit in digits)
            {
                choice ++;
                //Console.Write(digit);
                switch (digit)
                {
                    case 0: break; //choose Q from choice
                    case 1: break; //choose R from choice
                    case 2: break; //choose W from choice
                    case 3: break; //choose T from choice
                }
            }
            //Console.WriteLine();
            // add it to your list of all permutations here
        }
        Console.WriteLine("Done")
        Console.ReadLine();
    }
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

C# 高级排列场景 的相关文章

  • 使用 CLion 进行 OpenCV Windows 设置

    我想在 Windows 上为 CLion IDE 设置 OpenCV 我尝试使用 OpenCV 3 1 和 2 4 得到相同的结果 我有 Windows 10 64 位 CLion 使用 cygwin 环境 到目前为止我做了什么 1 从Op
  • CMake 找不到请求的 Boost 库

    既然我已经浏览了其他人的解决方案几个小时 但找不到适合我的问题的正确答案 我想将我的具体问题带给您 我正在尝试使用 CMake 构建 vsomeip 为此 我之前构建了 boost 1 55 但是 我在 CMake 中收到以下错误 The
  • 为什么 F# 的默认集合是排序的,而 C# 的不是?

    当从 C 世界迁移到 F 最惯用的可能 思维方式时 我发现了这个有趣的差异 在 C 的 OOP mutable 世界中 默认的集合集合似乎是HashSet https learn microsoft com en us dotnet api
  • 如何在另一个应用程序中挂钩 api 调用

    我正在尝试挂钩另一个应用程序的 ExtTextOut 和 DrawTextExt GDI 方法调用 我知道我需要使用 GetProcAddress 来查找 gdi32 dll 中那些方法的地址 并用我的函数的地址覆盖我想要挂钩的进程中的地址
  • 在 OnModelCreating 期间设置列名称

    Issue 我目前正在尝试通过设置的属性为我的表及其列添加前缀 我正在使用实体框架核心 我已经正确地为表名添加了前缀 但我似乎无法弄清楚列的前缀 我有一种感觉 我需要使用反射 我已经留下了我的 可能很糟糕的 反思尝试 有人有办法在实体中设置
  • C++ 长 switch 语句还是用地图查找?

    在我的 C 应用程序中 我有一些值充当代表其他值的代码 为了翻译代码 我一直在争论使用 switch 语句还是 stl 映射 开关看起来像这样 int code int value switch code case 1 value 10 b
  • 检测wlan是否关闭

    任何人都可以给我一个提示 如何在 Windows Phone 上以编程方式检测 C 8 1 应用程序 不是 8 0 是否启用 禁用 WLAN 我不想更改这些设置 只是需要知道 该解决方案是一个 Windows 8 1 通用应用程序 Wind
  • linq 中使用字符串数组 c# 的 'orderby'

    假设我有一个这样的方法定义 public CustomerOrderData GetCustomerOrderData string CustomerIDs var query from a in db Customer join b in
  • 从代码中,如何创建对存储在附加属性中的对象的属性的绑定?

    我们有一个继承的附加属性来存储一个对象 在可视化树的更下方 我们希望从代码绑定到该对象的属性 通常我们像这样构建绑定的路径部分 var someBinding new Binding Path new PropertyPath Attach
  • 在 omp 并行 for 循环中使用 unique_ptr 会导致 SEG.FAULT

    采取以下代码 include
  • 将表(行)与 OpenXML SDK 2.5 保持在一起

    我想在 Word 文档中生成多个表 每行 2 行 但我想将这两行保留在一起 如果可能的话 new KeepNext 第一行不起作用 new KeepNext 第一行的最后一段不起作用 new CantSplit 放在桌子上不起作用 在所有情
  • 访问 ascx 文件中的母版页控件

    我有一个母版页文件 其中包含 2 个面板控件中的 2 个菜单 我还使用控件来检查用户是否登录并获取用户类型 根据我想要显示 隐藏面板的类型 控件本身不在母版页中引用 而是通过 CMS 系统动态引用 我想在用户控件中使用findcontrol
  • 根据位置计算组合

    我在解决这个问题时遇到了麻烦 创建一个函数 给定字符集 C 可以生成第 N 个组合 或者返回给定起始位置 Ns 和结束位置 Ne 以及组合的最大长度 Mx 的一系列组合 一个具体的例子 令 C A B C 我们知道不同的组合将如下所示 假设
  • 使用 C# 和 wpf 创建类似 Dock 的应用程序

    我需要创建一个与我们购买笔记本电脑时获得的应用程序类似的应用程序 仅当鼠标指针到达窗口顶部时它才可见 那么我怎样才能使用 C 4 0 来做到这一点呢 http www notebookcheck net uploads pics win2
  • 如何对 NServiceBus.Configure.WithWeb() 进行单元测试?

    我正在构建一个 WCF 服务 该服务接收外部 IP 上的请求并将其转换为通过 NServiceBus 发送的消息 我的单元测试之一调用Global Application Start 它执行应用程序的配置 然后尝试将 Web 服务解析为 验
  • 使用具有抗锯齿功能的 C# 更改抗锯齿图像的背景颜色

    我有一个图像需要更改背景颜色 例如 将下面示例图像的背景更改为蓝色 然而 图像是抗锯齿的 所以我不能简单地用不同的颜色替换背景颜色 我尝试过的一种方法是创建第二个图像 仅作为背景 并更改其颜色并将两个图像合并为一个图像 但是这不起作用 因为
  • 如何从 Rx Subscribe 回调异步函数?

    我想回调 Rx 订阅中的异步函数 例如 像那样 public class Consumer private readonly Service service new Service public ReplaySubject
  • .NET 4 的条件编译[重复]

    这个问题在这里已经有答案了 可能的重复 条件编译和框架目标 https stackoverflow com questions 2923210 c sharp conditional compilation and framework ta
  • 为什么以下 C 程序会出现总线错误?

    我认为这是第一个失败的 strtok 调用 好久没写C了 有点不知所措 非常感谢 include
  • DataContractSerializer 事件/委托字段问题

    在我的 WPF 应用程序中 我正在使用DataContractSerializer序列化对象 我发现它无法序列化具有事件或委托声明的类型 考虑以下失败的代码 Serializable public abstract class BaseCl

随机推荐

  • erf(x) 和 math.h

    根据这个网站误差函数 erf x 来自 math h 但实际查看 math h 时 它不存在 并且 gcc 无法编译以下测试程序 而 g 可以 include
  • 切换到 18.x 后,Lambda 函数无法加载 AWS sdk

    我将 Lambda 函数从 node12 x 升级到了 node18 x 该代码在 12 x 上运行得很好 切换到 18 x 后 我无法再包含 AWS sdk 我曾经通过简单地输入以下内容来包含它 var AWS require aws s
  • 在 DialogFragment 中使用适配器时软键盘不显示

    我有一个自定义的 DialogFragment 其中有一个 ArrayAdapter 其中有一些 editText 当显示对话框时 即使我按下编辑文本 软键盘也不会出现 编辑文本确实获得焦点 但键盘永远不会出现 如果我不使用适配器而只使用带
  • 解析 Common Lisp 列表中的符号

    假设我有一个函数 CL USER gt defun trimmer seq This trims seq and returns a list cdr butlast seq TRIMMER CL USER gt trimmer 1 2 3
  • 自定义 UITabBar 图标 iOS

    我正在开发一个选项卡式应用程序 我想集成自定义 UITabbar 背景和图标 我已经插入了自定义背景 但图标有问题 图标应该是这样的 但是在故事板中为每个视图添加图标后 我得到如下灰色图标 有谁知道为什么图标以这种方式显示 非常感谢 使用
  • 不明白错误读取不正确的权限

    我正在尝试使用 pyautogui 为游戏制作一个机器人 但是当这行代码运行时 if py locateOnScreen r C Users molta Documents Pythons Poison png None 它返回此错误 OS
  • WebSphere Liberty Profile:未找到上下文根

    我似乎无法在本地工作 即使相同的 WAR 在远程服务器上工作 当我在本地访问我的应用程序时 出现 找不到上下文根 错误 Liberty 配置文件版本为 8 5 5 5 以下是相关文件 服务器 xml
  • 使用单个ajax请求渲染json数据和部分视图

    下面给出的代码向控制器发送 ajax 请求 if btid 01 var allData sessionName sessionname val foundStudent studentId val code btid var mySess
  • 如何合并主分支和主分支?

    大约一个月前 我创建了一个 git 存储库 其中主分支称为 master 几天前 当我尝试提交并推送到同一个存储库时 它将我的更改推送到 master 分支 但我收到一条消息 说主分支已更改为 main 分支 我尝试过合并 但收到一条错误消
  • ReferenceError:找不到变量:__DEV__ [重复]

    这个问题在这里已经有答案了 当我启动我的项目时 我得到了ReferenceError Can t find variable DEV 错误 我已经注释掉了几乎所有代码 现在只有这个 import React Component Text f
  • 如何使用 pyusb 与该设备通信?

    我有一个 Netware uniFlow 设备 当我插入它时 它会显示在 dmesg 中 2962 369905 usb 2 1 4 new full speed USB device number 11 using ehci pci 29
  • 使用 Intel Core 2 Duo E8500 CPU 的 CL_DEVICE_NOT_AVAILABLE

    我收到错误CL DEVICE NOT AVAILABLE跑步时这个示例代码 然而 与该问题不同的是 我的 CPU Intel Core 2 Duo E8500 CPU 似乎是支持的 我已确保链接到 Intel 版本的 OpenCL 库 因为
  • 使用paint时如何在WinForms中实现垂直和水平滚动条?

    在我的代码中 我绘制了一个矩形 通常该矩形对于屏幕来说太大了 即使最大化也是如此 我已经设置了表单属性AutoScroll为 true 这似乎没有任何作用 我的表单上除了矩形绘画之外不会有任何其他内容 我如何实现垂直和水平滚动 Printi
  • 为什么这个谓词留下一个选择点?

    我写了以下谓词 list withoutlast Last forget the last element list withoutlast First Second List First WithoutLast list withoutl
  • 是否有用于 PDF 元数据的 NPM 模块?

    我正在寻找一个npm模块 我可以用它来编辑元标签 例如Author and TitlePDF 文件 或者 开放许可的 JavaScript 库也可以 有一个程序叫pdftk 如果它是一个 这将是合适的npm module 我还没有测试过这个
  • Dart 中的插入符号有什么作用

    我正在查看一些 Flutter 项目 我注意到以下代码 override int get hashCode gt todos hashCode isLoading hashCode 这个 符号在这里做什么 这行代码是在Flutter项目的A
  • 如何根据 C++ 标准访问对象表示?

    如何访问对象表示 为了回答这个问题 我将其分为两个问题 1 如何获得对象表示的指针 根据标准 我看不到任何方法来获取指向对象表示 人们经常建议这样实现 some type obj const char rep reinterpret cas
  • System.getProperty("java.class.path") 不显示“WEB-INF/lib”和包含的 jar

    String CompilePath abc java JavaCompiler compiler ToolProvider getSystemJavaCompiler String classpath System getProperty
  • 在地图视图中显示动态注释图钉

    我正在开发一个应用程序 它使用MKMapView 我在其中显示了多个注释 现在我想显示引脚的自定义注释图像 我为 MapViewAnnotation 制作了自定义类 import
  • C# 高级排列场景

    我试图弄清楚如何在给定以下信息的情况下找到所有组合 我从一个 JSON 数据集开始 var choices 1 Q 100 R 150 W 250 T 30 2 Q 90 R 130 W 225 T 28 3 Q 80 R 110 W 21