Questions tagged «c#»

这个挑战与C#语言有关。请注意,通常不建议要求答案使用特定语言的挑战。

30
C#中的代码高尔夫球技巧
您在C#中打高尔夫球有哪些一般提示?我正在寻找可以应用于编码高尔夫球问题的想法,这些想法至少在某种程度上是C#特有的(例如,“删除注释”不是答案)。请为每个答案发布一个提示。 -借鉴marcog的想法;)
62 code-golf  tips  c# 

1
什么时候长颈鹿不是长颈鹿?
我希望在“ Programming Puzzles&Code Golf”中可以找到这种“谜语”。 举例说明以下C#方法返回的情况false: public class Giraffe : Animal { public bool Test() { return this is Giraffe; } } 规则:上面的代码行不能以任何方式更改,但是您可以将代码放入应用程序中,以便编译“项目”并调用该方法。运行时,该方法必须返回false。我想到的解决方案不会在运行时或类似的“异国情调”事物中发出自己的IL,这是一个普通的实例方法调用。

1
一点魔法
挑战 给定以下C#方法: private static bool Test(bool a, bool b) { if (a && b) return false; if (a) if (b) return true; return false; } 提供值a,b以便true返回。 获奖条件 可以提供正确参数以使给定方法评估为true胜利的第一个条目。

19
使三角计划有效
三角性是Xcoder 先生开发的一种新的esolang ,其代码结构必须遵循非常特定的模式: 对于第nth行代码,其上必须完全2n-1有程序的字符。这将导致三角形/金字塔形,第一行仅包含一个字符,其余行以2为增量增加。 每行.的左侧和右侧都必须用s 填充,以使字符以其行为中心,并且所有行都应填充为相同的长度。如果l定义为程序中的行数,则程序中的每一行的长度必须为2 * l - 1 例如,左侧的程序有效,而右侧的程序无效: Valid | Invalid | ...A... | ABCDE ..BCD.. | FGH .EFGHI. | IJKLMN JKLMNOP | OPQRS 当布置在有效结构中时,该名称变得显而易见。 任务 您的任务是将单个行字符串作为代表Triangularity代码的输入,并将其输出转换为有效代码,如上所述。 I / O规格: 输入将仅包含范围内的字符 0x20 - 0x7e 输入的长度始终是一个平方数,因此可以很好地填充。 您必须将点用于输出填充,而不要使用其他东西。 您可以通过任何可接受的方法输入和输出。这是一个代码高尔夫球,因此以字节为单位的最短代码胜出! 测试用例 input ---- output g ---- g PcSa ---- .P. …
19 code-golf  string  code-golf  combinatorics  code-golf  math  number  code-golf  matrix  code-golf  string  decision-problem  code-golf  internet  code-golf  number  number-theory  integer  expression-building  code-challenge  primes  cops-and-robbers  obfuscation  code-challenge  primes  cops-and-robbers  obfuscation  code-golf  string  balanced-string  code-golf  quine  code-generation  code-golf  matrix  code-golf  tips  c#  code-golf  ascii-art  code-golf  ascii-art  source-layout  code-golf  quine  source-layout  popularity-contest  language-design  code-golf  array-manipulation  subsequence  code-golf  matrix  math  code-challenge  game  graph-theory  atomic-code-golf  code-golf  number  integer  polynomials  equation  code-golf  array-manipulation  sorting 

6
当try块中的所有内容都已被捕获时达到catch
我猜这仅限于Java和C#。 在此编程难题中,您将产生Exception可被捕获但又在catch块末尾再次抛出的。 try { while(true) try { // you are only allowed to modify code between this try { } brackets } catch(Exception ex2) { } } catch(Exception ex1) { // your goal is to reach this catch block by modifying the code ... // in the inner try block …

3
查找字符串中的模式
在这种挑战下,您的任务是找到具有给定结构的子字符串。 输入项 您的输入应为两个非空的字母数字字符串,一个模式 p和一个text t。这个想法是,的每个字符都p代表一个连续的非空子字符串,t该子字符串彼此相邻出现,并p表示它们的串联。相同的字符对应于相同的子字符串。例如,模式aa代表任何非空正方形(通过将较短的字符串与其自身连接而获得的字符串)。因此,模式aa可以匹配子字符串byebye,并且每次a匹配bye。 输出量 如果文本t包含p匹配的子字符串,则您的输出应为该子字符串,并:在与的字符相对应的字符串之间插入冒号p。例如,如果我们有t = byebyenow和p = aa,那么bye:bye它是可接受的输出。匹配子字符串可能有多个选择,但是您只能输出其中之一。 如果t不包含匹配的子字符串,则您的输出将是悲伤的表情:(。 规则和说明 的不同字符p可以对应相同的子字符串,因此p = aba可以匹配字符串AAA。请注意,这些字符必须对应于非空字符串;特别是,如果p长于t,则输出必须为:(。 您可以编写完整的程序或函数,还可以更改两个输入的顺序。最低字节数获胜,并且不允许出现标准漏洞。 测试用例 以格式给出pattern text -> output。注意,可能存在其他可接受的输出。 a Not -> N aa Not -> :( abcd Not -> :( aaa rerere -> re:re:re xx ABAAAB -> A:A MMM ABABBAABBAABBA -> ABBA:ABBA:ABBA x33x 10100110011001 -> 10:1001:1001:10 …
17 code-golf  string  code-golf  ascii-art  geometry  code-golf  ascii-art  code-golf  sequence  stack  code-challenge  number  sequence  answer-chaining  code-golf  code-challenge  math  combinatorics  binary-matrix  code-golf  number  code-golf  cryptography  bitwise  code-golf  sudoku  code-golf  brainfuck  metagolf  code-golf  probability-theory  number-theory  primes  fewest-operations  factoring  golf-cpu  code-golf  restricted-source  code-golf  graphical-output  sequence  binary  code-golf  tips  c#  code-golf  geometry  code-golf  graphical-output  fractal  code-golf  number  sequence  code-golf  number  array-manipulation  popularity-contest  game  board-game  code-golf  puzzle-solver  grid  code-golf  ascii-art  geometry  grid  tiling  code-golf  ascii-art  whitespace  balanced-string  code-golf  card-games  king-of-the-hill  javascript  code-golf  whitespace  balanced-string  code-golf  code-golf  math  abstract-algebra  code-golf  java  code-golf  interpreter  stack  code-golf  base-conversion  code-golf  tips  code-golf  ascii-art  geometry  brainfuck  metagolf  code-challenge  math  quine  code-generation  code-golf  number  kolmogorov-complexity  arithmetic  expression-building  code-golf  string  code-golf  quine  popularity-contest  code-golf  base-conversion  code-challenge  image-processing  code-golf  conversion  coding-theory 

6
代码注入也可以在C#中工作!
给定以下C#程序输出False,请注入“恶意”代码行,以使程序输出True。 class Program { static void Main() { System.Console.Write("False"); ; } } 您的答案应包含一个字符串,该字符串将替换第二个分号,并导致程序输出True,整体,True而仅输出True(甚至不包括换行符)。如果将stdout打印到控制台,并且将stdout重定向到文件,则必须执行此操作。 最短的答案将获胜。

5
最短的Hello World程序,无分号
我最近在SO上看到了一些问题,询问您是否可以在不使用C#的情况下使用半分号的情况下制作Hello World程序。面临的挑战是要再次执行此操作,但要用尽可能短的代码!
14 code-golf  c# 

3
Brainfuck中的按位运算符
您的任务是为以下每个二进制运算符创建一个Brainfuck程序。每个程序应从输入中获取一个或两个8位数字(A和B)并计算指定的运算: A XOR B A AND B A OR B A Shifted Left by 1 (circular shift) NOT A 您不必全部实施5。得分的计算方式为: #totalCharacters + {4000 * #problemsNotCompleted} 因此,有效分数是从零(最佳)到20,000(未完成)。 我不在乎您将结果存储在哪里,也不管您是否保留输入。假设8位单元以及仅在右侧需要的空单元数。 您可能会认为数字已经在最适合您的任何内存位置中,因此您无需担心IO操作。
13 code-golf  binary  brainfuck  code-golf  code-golf  ascii-art  random  code-golf  code-golf  code-challenge  sorting  code-golf  code-challenge  java  code-golf  statistics  code-golf  code-challenge  fastest-code  code-golf  math  code-golf  math  kolmogorov-complexity  code-golf  code-golf  array-manipulation  combinatorics  code-golf  kolmogorov-complexity  popularity-contest  underhanded  code-golf  math  floating-point  code-golf  interpreter  code-golf  music  code-golf  code-golf  cryptography  code-challenge  scrabble  code-golf  code-challenge  popularity-contest  quine  code-golf  quine  cryptography  code-golf  kolmogorov-complexity  code-golf  printable-ascii  code-golf  chess  code-golf  math  number-theory  code-challenge  c  code-golf  random  popularity-contest  hello-world  code-shuffleboard  code-golf  compression  grammars  code-golf  tips  code-golf  sequence  code-golf  string  code-challenge  sorting  permutations  code-golf  string  code-challenge  optimization  code-golf  interpreter  code-challenge  string  code-golf  math  number  fibonacci  string  compression  c#  code-golf  chemistry  popularity-contest  math  c  c++  java  code-golf  math  function  code-golf  complex-numbers  code-golf  geometry 

1
帮助Jason格式化他的JSON
杰森(Jason)有一个很大的JSON,但它不可读,因此需要美化它。 格式化规格 JSON有4种不同的类型: 数字;只是0-9 弦; 用双引号引起来的"字符串\ 数组;以分隔[],项目以分隔,,项目可以是以下任何类型 对象;以分隔{},格式是key: valuekey是字符串,value是这些类型中的任何一种 间距 数组之间的逗号之间应仅留一个空格 对象应该在键和值之间只有一个空格, : 缩进 每个嵌套级别比上一个缩进2个级别 每个对象键/值对始终在自己的行上。对象缩进 如果数组包含另一个数组或对象,则该数组将缩进多行。否则,数组将保持一行 规则 内置插件,其轻视这个任务都不会允许的。 一如既往,不允许出现标准漏洞 例子 [1,2,3] [1, 2, 3] {"a":1,"b":4} { "a": 1, "b": 4 } "foo" "foo" 56 56 {"a":[{"b":1,"c":"foo"},{"d":[2,3,4,1], "a":["abc","def",{"d":{"f":[3,4]}}]}]} { "a": [ { "b": 1, "c": "foo" }, { "d": [2, …
11 code-golf  string  json  code-golf  number  code-golf  image-processing  code-golf  string  code-golf  number  sequence  arithmetic  number-theory  code-golf  string  code-golf  string  counting  code-golf  ascii-art  code-golf  math  code-golf  tips  code-golf  string  code-golf  grid  graph-theory  code-golf  parsing  interpreter  brainfuck  code-golf  math  arithmetic  number-theory  programming-puzzle  c#  code-golf  dominoes  code-golf  tips  code-golf  string  grid  crossword  code-golf  string  code-golf  kolmogorov-complexity  code-golf  number  sequence  code-golf  string  math  number  number-theory  primes  fastest-code  code-golf  number  code-golf  string  code-golf  ascii-art  number  kolmogorov-complexity  code-golf  string  grid 

1
C#二进制数的第一个1(从右到左)
我正在尝试使用C#在数字的二进制表示形式中找到第一个1(从右到左)的索引。例如,由于二进制中的100为: 0b1100100 第一个1在右边的第三位置,因此它应该产生3。 234应该产生2,0应该产生0,依此类推。 这是我当前的解决方案: k < 1 ? 0 :(int)Math.Log(k & -k, 2) + 1; 有什么办法可以缩短它的时间?
10 code-golf  tips  binary  c# 

3
C#是主要问题
这个编程难题的灵感来自于昨天在这里提出但又被作者删除的另一个问题。 挑战: 使用Visual C#(或您喜欢的C#IDE)创建可执行二进制文件(Windows .EXE或Linux二进制文件),该文件将以下文本打印到标准输出中: Main() is the main method of C# programs! ...而不使用任何源文件中出现的4个连续字母MAIN! 笔记: 如果您的源代码包含文本remainder(例如),则它包含4个连续的字母MAIN,但是如果包含4个字母,则mxain不再是连续的,因此mxain将被允许​​。 除了C#IDE之外,您不能运行任何程序,也不能更改C#IDE的设置来运行其他程序(但可以正常运行的程序,例如C#编译器)。 否则,您可以简单地说:“我使用C#IDE编写Pascal程序,并在C#项目的“预构建”步骤中调用Pascal编译器。 这太简单了。 可以使用“插件”(或类似插件)进行扩展的IDE用户,或具有内置二进制文件编辑器(十六进制编辑器)的用户,将比其他C#IDE的用户拥有太大的优势。 因此,也不应使用这些功能。 明确允许使用其他非ASCII编辑器(例如对话框窗口编辑器)! 用户使用函数名称中的反斜杠提出这样的原始问题,就像这样:static void M\u0061in()由于其他用户已经阅读了此答案,因此将不再接受该答案! 用户询问是否允许将.EXE文件简单地输入到源代码编辑器中,并将文件另存为“ .exe”而不是“ .cs”。答:我认为这不可能,因为有效的Windows和Linux二进制文件都包含NUL字节。但是,如果找到可以通过这种方式创建的有效二进制文件,则您将获得有效的解决方案。 该站点的名称是“ Programming Puzzles & Code Golf”-这是“ Programming Puzzles & Code Golf”,而不是“ Code Golf”:挑战是要在所有其他用户之前找到可行的解决方案,而不是找到比所有其他用户都短的解决方案解决方案。 因此,描述有效解决方案的第一篇文章胜出! 祝好运! 顺便说一句:我有一个在Visual C#Express 2010下工作的解决方案。
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.