我意外地在NuGet Package Manager控制台中发出了无效的PowerShell命令并锁定了控制台.
命令是
PM> Get-Project -all | Where { $_.ProjectName -imatch "GPEC.Personne }
Run Code Online (Sandbox Code Playgroud)
然后控制台显示>>作为提示,我无法离开此模式.关闭并重新打开控制台没有帮助.(不得不重启VS).
在这种情况下,有没有办法优雅地取消错误的命令并返回到标准PM>提示符?
提前致谢.菲利普
给定具有n个元素的集合C(允许重复)和n
P = {i1,i2,.../i1 + i2 + ... = n} 的分区P 在大小为i1,i2的子集中有多少不同的C分解, ... 在那儿 ?
示例:
C = {2 2 2 3}
P = {2 2}
C = {2 2} U {2 3}
P = {1 1 2}
C = {2} U {2} U {2 3}
C = {2} U {3} U {2 2}
P = {1 3}
C = {2} U {2 2 3}
C = {3} U {2 2 2}
Run Code Online (Sandbox Code Playgroud)
我有一个解决方案,但是当C有十几个元素时效率很低.
在此先感谢
Philippe
我有2个相同长度的字符串.
我假设(可能错误地)在每个字符串的每个字符之间插入一个空格不会改变它们的顺序.
var e1 = "12*4";
var e2 = "12-4";
Console.WriteLine(String.Compare(e1,e2)); // -1 (e1 < e2)
var f1 = "1 2 * 4";
var f2 = "1 2 - 4";
Console.WriteLine(String.Compare(f1,f2)); // +1 (f1 > f2)
Run Code Online (Sandbox Code Playgroud)
如果我插入其他字符(例如_ x),则保留顺序.
这是怎么回事 ?
提前致谢.
我的问题需要3个(不太长的函数)来重现(VS2010/.NET 4)
在第一种情况下,我的IEnumerable没有被评估(通过ToList()方法)
我看不出为什么..
//主程序
private void ButtonTest_Click(object sender, RoutedEventArgs args)
{
int[] indexes = new int[] { 2, 2, 2, 2, 2, 2 };
var query = Odometer(indexes);
// 1) Iterator not evaluated ???
var temp = query.ToList();
MessageBox.Show(AsString(temp[3]));
// 2) OK in this case
int count = 0;
foreach (int[] item in query)
{
count++;
if (count == 3)
MessageBox.Show(AsString(item));
}
}
/// <summary>
/// Generate all tuples between 0 and indexes[i]-1
/// Ex :
/// Odometer(new int[]{2, …Run Code Online (Sandbox Code Playgroud) 我正在寻找"排列"算法的快速实现(具有重复的排列).给定N个对象(数量a中的A,数量b中的B,......),生成所有可能的组合.
例:
Arrangement("AAA", "B", "CC") would return :
"AAABCC" "AABACC" "AABCAC" "AABCCA" "ABAACC" "ABACAC" "ABACCA" "ABCAAC"
"ABCACA" "ABCCAA" "BAAACC" "BAACAC" "BAACCA" "BACAAC" "BACACA" "BACCAA"
"BCAAAC" "BCAACA" "BCACAA" "BCCAAA" "AAACBC" "AACABC" "AACBAC" "AACBCA"
"ACAABC" "ACABAC" "ACABCA" "ACBAAC" "ACBACA" "ACBCAA" "CAAABC" "CAABAC"
"CAABCA" "CABAAC" "CABACA" "CABCAA" "CBAAAC" "CBAACA" "CBACAA" "CBCAAA"
"AAACCB" "AACACB" "AACCAB" "AACCBA" "ACAACB" "ACACAB" "ACACBA" "ACCAAB"
"ACCABA" "ACCBAA" "CAAACB" "CAACAB" "CAACBA" "CACAAB" "CACABA" "CACBAA"
"CCAAAB" "CCAABA" "CCABAA" "CCBAAA"
Run Code Online (Sandbox Code Playgroud)
(如果可能,用C,C#或Pascal编码)
在此先感谢
Philippe