我想使用单个整数选择整数组合
,
就像我有一个数字一样1234
。现在我想要的是:1,2,3,4,12,23,34,123,234,1234
请帮忙..??
我想使用单个整数选择整数组合
,
就像我有一个数字一样1234
。现在我想要的是:1,2,3,4,12,23,34,123,234,1234
请帮忙..??
如果我理解正确,您需要给定字符串的所有子字符串(在本例中为数字 1234)。因此,对于长度为 n 的字符串,有n 个长度为 1 的子字符串、n - 1 个长度为 2 的子字符串,等等,直到一个长度为n的子字符串。
鉴于您可以使用两个嵌套循环轻松解决此问题,例如:
public static IEnumerable<int> Foo(int x) {
string s = x.ToString();
for (int length = 1; length <= s.Length; length++) {
for (int i = 0; i + length < s.Length; i++) {
yield return int.Parse(s.Substring(i, length));
}
}
}
(未经测试,可能有栅栏错误,但你明白了。)
用代码讨论排列和组合的地方。