struct TroopItem { int id; int type; int level; int load; int force; int own_num; int select_num; }; List<TroopItem> QuickSelectTroopList(int res_max, int march_size_max, List<TroopItem> own_troop_list) { List<TroopItem> selected_troop_list; int remaining_load = res_max; int remaining_march_size = march_size_max; // 计算每种士兵可以派出的最大数量 for (int i = 0; i < own_troop_list.Count; i++) { own_troop_list[i].select_num = Math.Min(own_troop_list[i].own_num, remaining_march_size / own_troop_list[i].load); own_troop_list[i].select_num = Math.Min(own_troop_list[i].select_num, remaining_load / own_troop_list[i].load); remaining_march_size -= own_troop_list[i].select_num * own_troop_list[i].load; remaining_load -= own_troop_list[i].select_num * own_troop_list[i].load; selected_troop_list.Add(own_troop_list[i]); } return selected_troop_list; }中own_troop_list[i].select_num = Math.Min(own_troop_list[i].select_num, remaining_load / own_troop_list[i].load);这段代码的含义
时间: 2024-04-23 17:25:14 浏览: 95
int-to-bits.rar_Int.intToIntBits_int-bits_int赋值给位域_整数存入位域
这段代码的含义是计算每种士兵可以派出的最大数量,并将其存储在 `own_troop_list[i].select_num` 中。这一行代码的具体作用是将 `own_troop_list[i].select_num` 与 `remaining_load / own_troop_list[i].load` 中的较小值进行比较,取较小值作为 `own_troop_list[i].select_num` 的值。其中 `remaining_load` 表示剩余可用的资源载重量,`own_troop_list[i].load` 表示一支部队所需要的资源载重量。这行代码的意义在于确保每种士兵的派出数量不会超过可用的资源载重量。
阅读全文