タグ付けされた質問 「counting」

いくつかの特性の発生数のカウントに関する課題。

8
行番号-nlを実装する
あなたの仕事はnl、GNUコアユーティリティのコマンドラインツールに似たプログラムを実装することです。 標準的な抜け穴は禁止されています。 GNU sedのコマンドnlや=コマンドなど、ファイルまたは文字列の行に番号を付けるために、組み込みまたは外部の関数、プログラム、またはユーティリティを使用することはできません。 仕様 入力 プログラムは引数としてファイル名を受け入れます。コードはクロスプラットフォームである必要はありません。コードを実行しているOSのファイル名形式を使用する必要があります。つまり、Windowsを使用している場合、ディレクトリ区切り文字は\または/です。 -指定されている場合を含め、64個の入力ファイルを取得できる必要があります。64を超える場合は、最初の64のみを処理します。 ファイル名のリストで、-標準入力を表します。 ファイル名が指定されている場合は、指定された順序でファイルから読み取り、内容を連結し、各ファイルの間に新しい行を挿入します。1つまたは複数のファイル名から読み取ることができない場合(ファイルが存在しないか、読み取り権限がないため)、無視します。指定されたすべてのファイル名が無効な場合、何も出力しません。 ファイル名が指定されていない場合は、標準入力から読み取ります。ファイル名が指定されていない場合、または指定されている場合にのみ、標準入力から読み取ります-。 出力 プログラムは、このように番号が付けられた行で入力を標準出力に出力します(入力に\n、\r\nまたは\r行末があると仮定することができます;都合の良い方を選択しますが、どちらかを指定します)。 <5 spaces>1<tab><content of line 1 of input> <5 spaces>2<tab><content of line 2 of input> ... <4 spaces>10<tab><content of line 10 of input> ... <3 spaces>100<tab><content of line 100 of input> ... ... 行番号には6文字のスペースが割り当てられ、これらの文字の最後に挿入されます。残りはスペースになります(たとえば1、先頭に5つのスペースがあり、22先頭に4つのスペースがあります...)。入力が十分に長い場合、最終的にlineの行番号のスペースが不足します999999。999999行目以降は何も出力しないでください。 入力が空の場合、何も出力しません。 終了ステータス 低い番号が優先されます。エラー1および2が発生した場合、ステータス1で終了します。 入力が正常に受信され、行が正常に番号付けされて出力された場合、ステータス0で終了します。 …

30
整数の出現回数をカウントする[終了]
閉じた。この質問はより集中する必要があります。現在、回答を受け付けていません。 この質問を改善したいですか?この投稿を編集するだけで1つの問題に焦点を当てるように質問を更新します。 閉じた3年前。 質問2を含む1,000,000未満の正の整数はいくつですか?。私はからInteger XをY含むまでのすべてのInteger をカウントする最も創造的なソリューションを探していZます。 Z0〜の範囲で指定できますY。 整数Zがより頻繁に表示される場合でも、見つかったすべての整数は1回だけカウントされます。例えば: Z = 2 123 counts 1 22222 also counts 1 Javaで書かれた本当にシンプルなアルゴリズムから始めます(みんなに愛されているからです): public class Count { public static void main(String[] args) { int count = 0; for (int i = Integer.parseInt(args[0]); i <= Integer.parseInt(args[1]); i++) { if (Integer.toString(i).contains(args[2])) { count++; } } System.out.println(count); …

30
リストの「ラップされていないサイズ」を見つける
次の規則により、uネストされたリストl(リストのみを含む)の「ラップされていないサイズ」関数を定義しましょう。 lが空の場合、u(l)1です。 lが空でない場合、u(l)は、のすべての要素のラップされていないサイズの合計にl1を加えたものに等しくなります。 あなたの仕事は、リストを入力として受け取り、リストのラップされていないサイズを出力する(または返す)プログラム(または関数)を書くことです。 テストケース: [] -> 1 [[[]],[]] -> 4 [[[]],[[[[]],[]]],[[[]],[[[[]],[[],[[]]]]]]] -> 19 [[[[]]]] -> 4 これはcode-golfなので、最短のプログラム(バイト単位)が勝ちます。

3
音素アブギダ
キャラクター これらのUnicode文字を英語のIPA子音と呼びましょう: bdfhjklmnprstvwzðŋɡʃʒθ そして、これらのUnicode文字を英語のIPA母音と呼びましょう : aeiouæɑɔəɛɜɪʊʌː (はい、ː単なる長母音マークですが、この課題のために母音として扱います。) 最後に、これらは一次および二次ストレスマークです: ˈˌ ことに留意されたいɡ(U + 0261)小文字gではなく、一次ストレスマーカーˈ(U + 02C8が)アポストロフィではなく、ː(U + 02D0)は、結腸ではありません。 あなたのタスク 単語が与えられたら、続く子音の上に母音を重ね、前に来る子音の下に強勢マーカーを置きます。(質問のタイトルが示唆するように、子音母音シーケンスがユニットとしてまとめられているような書記体系はabugidaと呼ばれます。)入力が与えられると、出力ˈbætəlʃɪpを生成します。 æə ɪ btlʃp ˈ 単語は上に定義した、子音、母音、およびストレスマークの文字列であることが保証されます。連続する強勢記号は決して存在せず、それらは常に単語の先頭および/または子音の前に置かれます。 テストケース 母音が連続している場合があります。例えば、kənˌɡrætjʊˈleɪʃənとなり ɪ ə æ ʊeə knɡrtjlʃn ˌ ˈ 単語が母音で始まる場合、子音と「ベースライン」に印刷:əˈpiːlとなり ː i əpl ˈ 初期の強調母音を含むテストケース:にˈælbəˌtrɔsなります ə ɔ ælbtrs ˈ ˌ 長い言葉:にˌsuːpərˌkaləˌfrædʒəˌlɪstɪˌkɛkspiːæləˈdoʊʃəsなる æ ː ː ʊ uə aə …

10
区別できないアイテムの順列
整数のリストを指定すると、整数の順列の数を出力し、区別できない順列を1回カウントします。ある場合はn整数であり、区別がつかない数字の各グループは、長さを持っているn_i、これはありますn! / (n_1! * n_2! * ...) ルール 入力は、1から12個の非負整数を持つ関数またはプログラムの引数としての何らかの形式のリストになります。 出力は、上記のように順列の数を印刷または返します。 標準的な抜け穴や組み込み関数(順列、組み合わせなどの生成)はありません。階乗が許可されます。 テストケース 入力: 1, 3000, 2, 2, 8 1, 1, 1 2, 4, 3, 2, 3, 4, 4, 4, 4, 4, 1, 1 出力: 60 1 83160

4
担当者の再計算にご協力ください!
数か月前に、質問に対する賛成票で与えられる評判を高めることについて、メタについて議論しました。投票の現在の評判システムの基本は次のとおりです。1 質問に賛成票を投じるU価値は5つあります。 回答の賛成票uは10名の価値があります。 質問または回答のダウン票dは、-2評判に値します。 新しいシステムにはさまざまな提案がありましたが、現在最も人気のあるものは上記と同じですが、質問の賛成票が+10 repにスケーリングされています。この課題は、このシステムが導入された場合にどれだけ多くの担当者を獲得できるかを計算することです。 例を見てみましょう。投票アクティビティがの場合、UUUUuuuuUUUUUduuudUU現在のシステムでは121を獲得します。 U x 4 x 5 = 20 = 20 u x 4 x 10 = 40 = 60 U x 5 x 5 = 25 = 85 d x 1 x -2 = -2 = 83 u x 3 x 10 = 30 …

8
多次元ラベルの組版
スチームパンクな多次元の世界では、上司はコングロマリットの多次元ファイルキャビネットの各引き出しに印刷されたインデックスラベルを貼り付けたいと考えています。 ボスは、この目的のためだけに購入したフォントを使用して、ラベルシート全体を単一のフォームとしてタイプセットしたいので、ソート(金属記​​号の断片)を注文する必要があります。ソートは非常に高価であるため、注文は各数字記号の正確なカウントのためでなければなりません。 与えられた(とにかく)次元≥0の長さのセットに対して、すべてのデカルト座標をタイプセットするのに必要な桁の頻度表である順序を(とにかく)返します。キーボードの出現順に並べる必要があります(つまり、9の後の0)。また、並べ替えがまったく行われない場合(次元の長さが0であるため)、並べ替え0の順序は含まれません。何も印刷しません。 コードが0次元も処理できる(つまり何も印刷しない)場合、-3のボーナスがソートされます。 最終的な改行文字は許容されます。 標準的な抜け穴の禁止が適用されます。 前述のように、ソートは高価なので、これはcodecolfです。 親切な魂は、この課題を編集して自動スコアリングを含めることができるため、次のようなヘッダーを含めます。# LanguageName, 123 sorts テストケース 与えられた11、印刷: 1 4 2 1 3 1 4 1 5 1 6 1 7 1 8 1 9 1 0 1 必要なラベルがあるため1、2、3、4、5、6、7、8、9、10、と11。 与えられた2 3、印刷: 1 5 2 5 3 2 必要なラベルがあるため1 1、 1 2、 1 3、 2 1、 …

2
nを法とする数論のインタープリター
(私たちの目的のための)数論の文は、次の記号のシーケンスです。 0および'(後継者)-後継者は+1、0'''' = 0 + 1 + 1 + 1 + 1 = 4 +(加算)と*(乗算) = (に等しい) (と)(括弧) 論理演算子nand(a nand bis not (a and b)) forall (ユニバーサル数量詞) v0、v1、v2、など(変数) ここに文の例があります: forall v1 (forall v2 (forall v3 (not (v1*v1*v1 + v2*v2*v2 = v3*v3*v3)))) ここでnot xは省略形ですx nand x-実際の文が使用する(v1*v1*v1 + v2*v2*v2 = v3*v3*v3) nand …
12 code-golf  number-theory  parsing  code-golf  kolmogorov-complexity  code-golf  code-golf  array-manipulation  matrix  code-golf  array-manipulation  code-golf  string  code-challenge  graphical-output  compression  code-golf  kolmogorov-complexity  code-golf  sequence  array-manipulation  code-golf  number  base-conversion  code-golf  string  decision-problem  code-golf  string  ascii-art  code-golf  string  random  code-challenge  brainfuck  code-generation  code-golf  code-golf  quine  code-golf  interpreter  code-golf  interpreter  code-golf  array-manipulation  sorting  code-golf  halting-problem  code-golf  javascript  code-golf  algorithm  code-golf  arithmetic  code-golf  math  counting  code-golf  math  code-golf  decision-problem  radiation-hardening  code-golf  conversion  bitwise  code-golf  number  decision-problem  code-golf  string  decision-problem  code-golf  random  game  code-golf  ascii-art  graphical-output  code-golf  decision-problem  binary-tree  tree-traversal  code-challenge  array-manipulation  code-challenge  graphical-output  path-finding  test-battery  algorithm  code-golf  integer  factorial  code-golf  binary-tree  code-golf  grid  graph-theory  code-golf  regular-expression  quine  code-golf  encoding  code-golf  king-of-the-hill  javascript 

11
ナックルを数えることで、31日間が何ヶ月あるかを数えます
まだ自分のナックルを使用して、1か月が31日以内であるかどうかを判断する人はどれくらいいますか? あなたの仕事は、「ナックルを数える」ことで、1か月の範囲で何月が31日間完全になり、31日間未満になるのかを数えるプログラムを書くことです。 礼儀:amsi.org.au 入力 一対の月。最初の月は2番目の月の前に時系列に来る必要はなく、適切な形式で与えられます。例:201703 201902— 2017年3月から2019年2月。選択した入力形式を説明してください。入力には、1〜9999のすべての年を含めることができる必要があることに注意してください。指定された月の範囲には、開始月と終了月の両方が含まれます。 出力 2つの整数:31日の範囲内の月数と31日未満の範囲内の月数。 例:14 10— 14個のナックル、10個の溝(つまり、その月の範囲では、完全な31日を持つ14か月と、31日未満の10か月があることを意味します)。 たとえば、範囲内の2番目の月が最初の月よりも前に来る入力の場合、201612 201611ゼロのペアを出力する必要があります。 入力と出力の例 | Input | Output | |---------------|-------------| | 201703 201902 | 14 10 | | 201701 202008 | 26 18 | | 000101 999912 | 69993 49995 | | 201802 201803 | 1 1 | | …

7
無制限のカウンターストリングを作成する
counterstringは、ソフトウェアのテストで使用される自己記述型テストデータのいくつかの並べ替えです。それが実際にジェームズ・バッハによって発明されたかどうかはわかりませんが、私はそこからそれを知っています。 アイデアは次のとおりです。テストデータには多くのアスタリスク(*)が含まれています。アスタリスクの前の数字は、その時点でのテストデータの長さを示しています。テストデータ内でアスタリスクではない位置を知る必要がある場合は、最後のアスタリスクを見つけ、前の数字を見て、それに続く桁数を追加します。 シーケンスは次のように始まります。 2*4*6*8*11*14*17*20*23* ^ ご覧のとおり、マークされたアスタリスクは位置14にあります。 次のようにファイルが切り捨てられた場合 [...]2045*20 あなたは2047文字のどこかに(2045アスタリスクがプラスのための2の限界があることを導き出すことが可能2とは0)。 その形式の任意の長いテスト文字列(std :: outまたはfileなど)を出力する最短(これはcode-golf)プログラムを作成するのはあなたのタスクです。文字の長さは引数として指定されます。プログラムは、最大2 GBのテストデータ(入力値2147483647文字)をサポートするものとします。 2 GBファイルの「危険な」位置: 8*11* 98*102* 998*1003* 9998*10004* 99998*100005* 999995*1000003* 9999995*10000004* 99999995*100000005* 999999995*1000000006* これは、995 * 999 *から995 * 1000 *または同様の決定を行う場合に@Leaky Nunの質問に答える必要があります。 入力値2147483647の2 GBファイルの終わりは次のとおりです。 2147483640*2147483

1
ジェイソンが彼のJSONをフォーマットするのを手伝ってください
Jasonには大きなJSONがありますが、判読できないため、彼はそれをきれいにする必要があります。 フォーマット仕様 JSONには4つの異なるタイプがあります。 数字; ただ0-9 ストリング; で"エスケープされた二重引用符付き文字列\ 配列; で区切られ[]、アイテムはで区切られ,、アイテムはこれらのタイプのいずれかになります オブジェクト; で区切られ{}、formatはkey: valuekeyが文字列で、valueはこれらのタイプのいずれかです 間隔 配列には、項目間のコンマの後にちょうど1つのスペースが必要です。 オブジェクトには、キーと値の間にスペースが1つだけあるはずです。 : くぼみ 各ネストレベルは、以前よりも2インデントされます 各オブジェクトのキーと値のペアは、常に独自の行にあります。オブジェクトはインデントされます 配列に別の配列またはオブジェクトが含まれる場合、配列は複数行にわたってインデントされます。それ以外の場合、配列は1行のままです ルール このタスクを単純化するビルトインは許可されていません。 いつものように、標準的な抜け穴は許可されていません 例 [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" }, …
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 

6
10進数のトリムとカウント
この課題では、入力文字列の小数点以下の桁数を出力するプログラムを作成し、必要に応じて入力をトリミングします。 例 -12.32 2 32 0 3231.432 3 -34.0 0 -34 023 0 23 00324.230 2 324.23 10 0 00.3 1 0.3 0 0 -04.8330 3 -4.833 ルール 入力は、取得できる文字列、STDIN、関数の引数、または最も近いものになります 出力は、関数リターン、STDOUT、または最も近い同等のものを使用できます。 言語の最大文字列長を除いて、入力整数のサイズに制限はありません。 入力に不要な(先頭または末尾の)ゼロがある場合: それらを取り出す必要があります 新しい数値の小数点以下の桁数を出力します セパレータで区切られた新しい番号を出力します(スペース、改行、コンマなど) 入力は常にこの正規表現に一致します:-?\d+(\.\d+)?または正規表現を話さない場合: 最初に負の数を暗示する可能性があり-ます。次に、少なくとも 1桁があります。そして、そこに可能性が ...あること.と、いくつかのより多くの数字を。 入力が有効かどうかを確認するには、こちらをチェックしてください 正規表現なし これはコードゴルフなので、バイト単位の最短コードが勝ちます

2
イノベーションの広がりのアイコンを数える
イノベーションとは、プレイヤーが先史時代から現代まで時代を超えて戦い、対戦相手よりも早く成果を上げようとするカードゲームです。 イノベーションの各カードはユニークであり、プレーヤーに多くのアイコンを提供します。各カードを2x3グリッドとして扱う場合、左端と下端の4つのスロットのうち3つは常にアイコンで占められます(黒い六角形のシンボルはカウントされません)。 ゲームには6種類のアイコン(城、王冠、葉、電球、工場、時計)があり、それらをcharsを使用して任意に表し012345ます。使用して#黒の六角形を表現するために、我々は、各カード上のアイコンを表すために4つの文字を使用することができます。たとえば、上記のカードは 0.. #.. 3.. 1.. -> 03#0 #331 355# 144# 3#0 331 55# 44# 現在、Innovationでは、プレイエリアのカードはパイル*にグループ化され、4つの方法のいずれかで展開されます。各例では、左端のカード03#0が山の一番上にあると仮定して、上のカードを使用します。 表示なし:一番上のカードのみが表示されます 0.. 3#0 左にスプレイ:一番上のカードが完全に表示され、下のすべてのカードの右3分の1も表示されます。 0..|.|.|.| 3#0|1|#|#| 右に表示:一番上のカードが完全に表示され、下のすべてのカードの左3分の1も表示されます 1|3|#|0.. 4|5|3|3#0 スプレイアップ:一番上のカードが完全に表示され、下のすべてのカードの下半分が表示されます。 0.. 3#0 --- 331 --- 55# --- 44# チャレンジ 入力は、2つの部分で構成されるスペースで区切られた単一の文字列になります。 スプレイ方向。これは!<>^、スプレイなし、左スプレイ、右スプレイ、または上スプレイをそれぞれ表すの1つです。 空ではないカードのリスト。各カードは4文字の長さで、charsで構成されてい012345#ます。左端のカードは山の一番上にあり、各カードには1枚だけが含まれています#。 回答は、関数、完全なプログラム、または同等のものです。スプレイの方向が最初か最後かを選択できます。つまり、以下の2つの形式のいずれかを選択できます。 > 03#0 #331 355# 144# 03#0 #331 355# 144# > …

1
フェンスポストを見つける
バックグラウンド フェンスポスト工場の近くで原子爆弾が爆発しました!フェンスポストは私たちの文明の存続に不可欠であるため、できるだけ多くを救出する必要があります。放射線耐性のあるロボットを派遣して地域を探索していますが、彼らの人工視覚をプログラムするのはあなたの仕事です。 入力 入力は、|-#改行区切りの文字列として指定された2種類のフェンスポストパーツと瓦bleを表す、文字の長方形のグリッドです。フェンスの支柱は爆発によって恐ろしく損なわれ、一部は熱によって融合しました。候補のフェンスポストを、開始と終了で|1つ以上-のsがある(|-|または|---|そうでない||)水平パターン、または開始と終了で-1つ以上|のs がある垂直パターン(基本的に)のいずれかに定義します90度回転した水平候補フェンスポスト)。実際fencepostは別の候補fencepostとその部分のいずれかを共有しない候補fencepostあります。 出力 出力は、入力グリッド内の実際のフェンスポストの数です。 例 入力グリッドを検討する |#|-|#|## #||--|||# ###|#|--# ###-||--| -#-|#-|#- #---#-#-| #-#-|#--| このグリッドには5つの候補フェンスポストがありますが、実際のフェンスポストは2つだけです(太字で表示)。したがって、正しい出力は2です。 ルール 完全なプログラムまたは関数のいずれかを作成できます。最小のバイトカウントが優先され、標準の抜け穴は許可されません。 追加のテストケース 入力: ##-- ||## -#|- |#|# 出力:0(0候補フ​​ェンスポスト) 入力: -##|-##-- #|#-|#||- --|-#|#|| ##||||-## ||#|--|-| -#|-#--|# |####|#-# 出力:0(5つの候補フェンスポスト) 入力: #|--|---|-|# ####|##--||- -|-##||#|--- -#|#-|-#-||| #|-##--###|- ---#-||-#-## #|---|###|-# -|---#-#|#|# |#--|####-|- 出力:4(8つの候補フェンスポスト) 入力: -|-||---##|# ---|######-# ####-##|#--| …

2
到達可能な蛇の方向の数
この課題は、ゲームSnakeについてのものではありません。 長さの水平線を引くことによって形成された2Dのヘビを想像してくださいn。体に沿った整数点で、この蛇は体を90度回転させることができます。最初にヘビの前部を左端に定義すると、ヘビの後ろの部分が回転によって移動し、前の部分はそのままになります。繰り返し回転することにより、さまざまな蛇の形を作ることができます。 ルール ヘビの体のある部分が別の部分と重なることはできません。 ヘビの体のどの部分も間に重なることなく、最終的な方向に到達できる必要があります。この問題では、接触する2つのポイントが重複しているとカウントされます。 私はヘビとその逆を同じ形だと考えています。 仕事 回転、平行移動、鏡面対称まで、作成可能なさまざまな蛇の形の総数はいくつですか? ヘビの体の一部の回転の例。想像n=10してみると、ヘビは直線の開始方向にあります。ここで、4反時計回りに90度回転します。私たちはヘビ4を10(ヘビ の尾)から垂直に、ヘビをから水平0に4横たえます。ヘビの体には直角が1つあります。 以下は、MartinBüttnerのおかげです。 水平のヘビから始めます。 次に、位置4から回転します。 この向きで回転した後、私たちは終わります。 次に、異なるヘビのこの方向を考えてみましょう。 ローテーション中にオーバーラップが発生する違法な動きを見ることができます。 スコア あなたのスコアは、nあなたのコードが私のコンピューター上で1分以内に問題を解決できる最大のものです。 回転が発生すると、蛇の半分が一緒に移動します。回転しているこの部分のいずれかが、回転中にヘビの一部と重なるかどうかを心配する必要があります。簡単にするために、蛇の幅はゼロであると想定できます。ヘビの特定の点でのみ、時計回りに反時計回りに最大90度回転できます。なぜなら、同じ方向に同じポイントで2つの回転が必要になるため、ヘビを2つに完全に折り畳むことはできません。 作れない形 作ることのできない形の簡単な例は首都Tです。より洗練されたバージョンは (この例についてはHarald Hanche-Olsenに感謝します) この例では、すべての隣接する水平線は垂直線と同様に1離れています。したがって、この位置からの法的な動きはなく、問題は可逆的であるため、開始位置からそこに到達する方法はありません。 言語とライブラリ 自由に利用できるコンパイラ/インタープリター/などを備えた任意の言語を使用できます。LinuxおよびLinuxでも自由に利用できるライブラリ用。 私のマシン タイミングは私のマシンで実行されます。これは、AMD FX-8350 8コアプロセッサへの標準のUbuntuインストールです。これは、コードを実行できる必要があることも意味します。結果として、簡単に入手できる無料のソフトウェアのみを使用し、コードをコンパイルして実行する方法の完全な指示を含めてください。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.