如何在不重复的情况下有效地生成数字组合的集合,其中所有集合在彼此之间具有特定的独特数字.
*注意:范围编号始终从0开始.
范围编号(数字[]) = 0,1,2,3,4,5,6,7 ==>总共8个数字(n).
组合(k) = 5个数字.
特殊数字(nD) = 2个数字.
结果:
0 1 2 3 4
0 1 2 5 6
0 1 3 5 7
0 1 4 6 7
0 2 3 6 7
0 2 4 5 7
0 3 4 5 6
共有7种有效组合
我目前的解决方案效率很低(或者你可以称之为暴力).
*首先我为每个组合循环.==> k C n
*然后我为有效组合创建一个temp.
*然后对于每个组合我验证我的临时,如果它有效然后将其存储在临时,否则忽略它.
而已.
这是我在Console App中的代码:
class Program
{
static …Run Code Online (Sandbox Code Playgroud) 我刚刚开始为我即将进行的项目了解 Leaflet.js。
我想要完成的任务: 我需要制作一个显示在地图上的标记列表,当列表项悬停(或鼠标悬停)时,它将显示地图上的位置(对于单个标记,它应该改变)它的颜色。对于聚集标记,它应该显示覆盖线,就像我们将其悬停时的行为一样。如果可能的话,也许还可以更改其颜色)。地图以及缩放级别不应更改,简单地说,我需要突出显示地图上的标记/集群。
让我超级沮丧的是:我没能找到一种方法让它在Clustered Marker上发生。
我使用全局 var 对象来存储任何创建的标记。
function updateMapMarkerResult(data) {
markers.clearLayers();
for (var i = 0; i < data.length; i++) {
var a = data[i];
var myIcon = L.divIcon({
className: 'prop-div-icon',
html: a.Description
});
var marker = L.marker(new L.LatLng(a.Latitude, a.Longitude), {
icon: myIcon
}, {
title: a.Name
});
marker.bindPopup('<div><div class="row"><h5>Name : ' + a.Name + '</h5></div><div class="row">Lat : ' …Run Code Online (Sandbox Code Playgroud)