vis*_*hnu 2 .net c# algorithm visual-studio-2008
我在聊天室里问了这个问题.但没有答案,所以我在这里发布问题.
问题是,例如,取abcd这个词
它有4个字符.通过添加'.'在字符之间你可以把它写成abcd
规则
只能在字符之间使用1个点
可以在单词
Edit中使用多个点:可以有没有'的字符.在他们之间.例如(ab或abcd)
不能在单词的开头或结尾使用点,即.abcd或abcd.是假的
一些答案
abcd
a.bcd
ab.cd
abc.d
abcd
a.bc.d
ab.cd
abc.d
有多少单词可以制作.如何编写程序在c#中找到它?
编辑 如何显示每个可能的单词?
你真的不需要为此编写程序.
对于n个字符的单词,有n-1个位置,其中可以有一个点(即每对字符之间).每个位置要么有点,要么没有.
因此,有2 n-1个可能的单词.
如果你真的想写一个C#程序来显示这个:
using System;
class Test
{
static void Main(string[] args)
{
// Argument validation left as an exercise for the reader
string word = args[0];
Console.WriteLine("Word {0} has {1} possibilities",
word, Math.Pow(2, word.Length - 1));
}
}
Run Code Online (Sandbox Code Playgroud)
编辑:请注意,这假定原始单词(没有点)仍然计数.如果您不想计算,请从结果中减去1.
编辑:我已经改变了计算使用,Math.Pow以便:
| 归档时间: |
|
| 查看次数: |
679 次 |
| 最近记录: |