[過去ログ] プログラミングのお題スレ Part15 (1002レス)
1-

このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
654: 2019/10/02(水)13:31 ID:vkK/4cs1(1/2) AAS
実装って何を言ってるのかな? コンパイラを作れってこと? それとも基本関数を使ってそれらしいハッシュマップを作れという事?
実装されている言語にさらに実装しろって意味不明。
655: 2019/10/02(水)14:40 ID:+RotAwEg(2/2) AAS
ハッシュマップのアルゴリズム部分を自分で書けってことだろ
アスペかよ
656: 2019/10/02(水)14:58 ID:h9bkbZIX(1) AAS
俺健常者だけど言ってる事正直よくわからんのだが
657: 2019/10/02(水)15:31 ID:vkK/4cs1(2/2) AAS
言わんとすることは何となくわかるんだが、多分ジェネリックが有る言語なら比較的考えやすいがジェネリックがない言語ではどう解釈するのかな。
658: 蟻人間 ◆T6xkBnTXz7B0 2019/10/02(水)16:28 ID:Q9AIQiw1(1) AAS
お題:文字列操作のUndo/Redoを実装せよ。

文字列Sに対し
(a) 文字位置indexからcount文字を別の文字列strで置き換える(replace)、
(b) 文字位置indexからcount文字を削除する(erase)、
(c) 文字位置indexに別の文字列strを挿入する(insert)
という操作が連続的に可能であるとき、これらの操作に対するUndo/Redo(元に戻す/やり直す)を実装せよ。

ただし操作対象の文字列Sが長いときにメモリーを無駄にする実装にしてはいけない。

解答例:
Undo/Redo framework for C++11
外部リンク:github.com
659: 2019/10/02(水)19:48 ID:By3xLmz3(1) AAS
ここの回答に使われる言語でハッシュマップ自分で実装せなあかん言語なんて少ないと思うが?
660: 2019/10/02(水)20:14 ID:uTylPaUx(1/5) AAS
ジェネリックなハッシュ関数の書き方が解らない。Orz
661
(2): 2019/10/02(水)20:29 ID:OIQKJ8Sl(1/2) AAS
シリアライズ、文字列化できてればCRC32でも一応ハッシュとして使える
662: 2019/10/02(水)20:36 ID:uTylPaUx(2/5) AAS
>>661
小規模な問題解くのにミドルウェアいるんすな。辛い。
663
(1): 2019/10/02(水)20:49 ID:OIQKJ8Sl(2/2) AAS
そんなに汎用的、一般的なのを作る必要もないとおもうので
入力は文字列限定で動くやつ作ればクリアでは?
664: 2019/10/02(水)21:00 ID:uTylPaUx(3/5) AAS
>>663
解った文字列やってみるわ。
665: 2019/10/02(水)21:46 ID:uTylPaUx(4/5) AAS
>>648
外部リンク:coliru.stacked-crooked.com
C++。コンストラクタ起動式って17からやったっけ?
とりあえず作ってみたが・・・。
今、調子悪くて困ってる。
666: 2019/10/02(水)21:48 ID:uTylPaUx(5/5) AAS
ハッシュ関数は適当。昔2chで見たのパクった。
HMのサイズ7にしておけばよかった。素数だからな。
667
(2): 2019/10/02(水)21:59 ID:bMxkjAXQ(1) AAS
お題: 簡易的なXMLをパースして構造を出力せよ

in < <div><p><a></a></p></div><span><p></p></span>

out >
div
__p
____a
span
__p
668: 2019/10/02(水)22:48 ID:2Yo9PRwa(1) AAS
>>661
それかsumでいいやん、conflictしたらリスト管理で一丁上がり
669: 2019/10/02(水)22:50 ID:XyzGBTdX(1) AAS
>>667
C++
外部リンク:ideone.com
670: 2019/10/03(木)08:18 ID:z1c5xmGq(1) AAS
>>629
> というか、技量の程度が疑わてしまうのでお勧めしない
人の心配する前に自分の出題技量の程度を心配しなよ…
671: 2019/10/04(金)01:29 ID:rw3arA+q(1) AAS
いいじゃねーかそんなこまけーことどうでも
ケツの穴のちいせぇやろうだな。
何ならおじさんが広げてやろうかw
672: 2019/10/04(金)01:59 ID:0BDgocBX(1) AAS
アッー!
673: 2019/10/04(金)04:07 ID:/Ff7i02R(1) AAS
>>620
外部リンク:ideone.com
C++。多分できた。
バグの原因は変数がマイナスを扱えていないことだった。
674: 2019/10/04(金)14:06 ID:IeSaX57c(1) AAS
>>629
の出題意図を読み取れば、
記憶域を余り自由に使えない環境で
如何に工夫して目的が達成できるか
ということではないかと
その意味では、Power-shellは少し
強力杉だから除外すべきだったかも
知れないが(遅いから使われる
ことは少ないだろけどスクリプト言
語処理系であるとも言えなくもないし)
675
(5): 2019/10/04(金)14:58 ID:BEYT4ZYw(1) AAS
シェルスクリプトって元々プログラミング言語じゃないからな。 あくまでも補助的なもの。
それでプログラミングすると言うのは本末転倒。 間違った方向性でしかない。

貧弱な環境でも使えるものと言うなら、BASIC や、Python の組込型がコンパクト。 PIC や子供のおもちゃにすら入ってる。 百円のチップにすら入ってるからな。

コンパイラでも良いのならCが最もシンプル。
676: 2019/10/04(金)17:29 ID:uYF9K7e8(1) AAS
またプログラム言語のオレオレ定義かよw
677: 2019/10/04(金)17:37 ID:ordI0mDW(1) AAS
それ以上に謎の空白が気になる
678: 675 2019/10/04(金)18:12 ID:aN85/uHn(1) AAS
わりいわりい、iOS13になって、日本語の途中の空白は全て全角になったから、なんか間抜けな感じになったな。

良いか悪いかわからんが慣れてくれ。
679: 2019/10/04(金)18:43 ID:hcjI0QEW(1/2) AAS
。の後にスペースをひとつ入れているようだ
680: 2019/10/04(金)18:44 ID:hcjI0QEW(2/2) AAS
スペース入れなきゃいいのでは?
681: 2019/10/04(金)19:36 ID:bnA3YiVJ(1) AAS
空白なのは頭ん中だけにしとけwww
682: 2019/10/05(土)00:51 ID:pioYL/z5(1) AAS
空っぽのほうが夢詰め込めるぞ
683: 2019/10/05(土)01:36 ID:iITy9V8b(1) AAS
空っぽかと思ったら、実は分厚い頭蓋骨が詰まった中心に
ポツンとノミのような脳みそがある、石頭だったでごじゃる
684: 637 2019/10/05(土)08:57 ID:4K3q4mZL(1/2) AAS
>>629 コマンドプロンプト 高速化版
外部リンク:ideone.com
>>642の6倍くらい速くなった…うちの環境だと>>646よりはやくなったどーw
685
(1): 2019/10/05(土)15:19 ID:6iFRuM3K(1/6) AAS
>>629 bash 4.3.42(3)

n=10000
eval "a=('' '' {2..$n})"
for i in ${a[@]}; do
 if [ ${a[$i]} ]; then
  echo $i
  for ((j=2*$i; j<=$n; j+=$i)); do
    unset a[$j]
  done
 fi
省12
686
(1): 2019/10/05(土)15:21 ID:6iFRuM3K(2/6) AAS
>>685 実行結果、貼りそこなって変な改行は入ってた…orz 訂正

実行結果
$ bash 15_629_prime.sh
2
3
5
7

9941
9949
省2
687
(2): 2019/10/05(土)15:31 ID:6iFRuM3K(3/6) AAS
>>686 いや、for ((j=$i*$i; j<=$n; j+=$i)); do だよ間違えた、25%早くなる

n=10000
eval "a=('' '' {2..$n})"
for i in ${a[@]}; do
 if [[ ${a[$i]} ]]; then
  echo $i
  for ((j=$i*$i; j<=$n; j+=$i)); do
    unset a[$j]
  done
 fi
省1
688: 2019/10/05(土)16:09 ID:6iFRuM3K(4/6) AAS
>>629 >>687の実行結果
外部リンク:ideone.com
689: 2019/10/05(土)17:13 ID:6iFRuM3K(5/6) AAS
>>687

eval "a=('' '' {2..$n})"
for i in ${a[@]}; do
 if [[ ${a[$i]} ]]; then

この書き方、a[]の最初の0,1番目の要素に空文字を設定しておいて
それを配列のインデックスとして使い、あまりいい書き方じゃないと気がついた
動いているんで、あせって直さないでおくけど ゴメンね〜
690
(4): 2019/10/05(土)20:48 ID:oVPf95FK(1) AAS
お題:
外部リンク:regexcrossword.com
のようなHEXマスの正規表現クロスワードパズルのソルバーを実装せよ。
n=1でいいので処理時間も報告せよ。
691
(1): 2019/10/05(土)21:56 ID:Lt/DoxvR(1) AAS
>>690
辞書データぷりーず
692: 2019/10/05(土)22:00 ID:4K3q4mZL(2/2) AAS
このソルバーに辞書データっているか?
693: 2019/10/05(土)22:27 ID:NXndjuW4(1) AAS
>>691
出題者ではないが、まず、完成図面を作って、そこから問題を作ったほうが早そうだ。
ヘックスの扱い方わからねーんだ俺。
昔聞いたことあるけど、そのうち・・・と思ってたら曖昧になってしまった。
694: 2019/10/05(土)23:11 ID:6iFRuM3K(6/6) AAS
>>667 Perl5

$in = '<div><p><a></a></p></div><span><p></p></span>';
use XML::Simple;
$xml = new XML::Simple->XMLin('<document>'.$in.'</document>');
use Data::Dumper;
$Data::Dumper::Terse = 1;
print Dumper $xml;

実行結果
~ $ perl 15_667_Simple.pl
{
省9
695: 2019/10/06(日)00:03 ID:tnh9RMO0(1/3) AAS
とりあえず>>690を手動で解くのに2時間かかったw
お題は思いついたらやる
696
(3): 2019/10/06(日)05:37 ID:oevqPO9x(1) AAS
お題: L形図形を表示する
[入力]
1
[出力]
a
bc

[入力]
2
[出力]
ba
省14
697
(1): 2019/10/06(日)05:55 ID:vrVeYjyl(1) AAS
>>696
最後のやつが4ではなく3?
それと文字はabc使っているが、どういう規則で並べるのか?
698: 2019/10/06(日)05:58 ID:lJB/egMg(1/2) AAS
カオス
699: 675 2019/10/06(日)09:02 ID:O+kT1S2P(1) AAS
最後は4だろ
700: 2019/10/06(日)09:24 ID:+7MXB6fE(1) AAS
>>697
おそらく1のパターンのL字を4つで向きを変えてくっつけて大きなL字にしたものが2のパターン。2を4つ使って同じことをやって3を作ってるということだと思う。愚直に再帰的にやれば簡単そう。
701: 2019/10/06(日)10:20 ID:tnh9RMO0(2/3) AAS
>>696
入力3の出力、一か所間違えとるよな?w
702: 2019/10/06(日)10:43 ID:tnh9RMO0(3/3) AAS
>>696 Java
外部リンク:ideone.com
703
(8): 2019/10/06(日)17:34 ID:kRqXlweR(1) AAS
お題: プログラム実行後にプログラム自身を削除するプログラムを作れ
実行内容は以下のメッセージを出力する
「このプログラムが起動するのは一度きりである。実行ののち、消去される。」
704
(1): 2019/10/06(日)17:53 ID:VH97tuta(1) AAS
>>703
echo このプログラムが起動するのは一度きりである。実行ののち、消去される。
rm -rf /
705: 675 2019/10/06(日)18:05 ID:m+CayYCA(1) AAS
>>703 そんな問題は却下。 
どんな問題でもファイルを削除する様な問題は出してはいけない。
ど素人もいるんだからそんな問題は出すべきではない。
706: 2019/10/06(日)20:06 ID:+aq+gJyQ(1) AAS
>>704
大抵の環境でコマンド通らないんじゃないかそれ
707
(1): 2019/10/06(日)20:12 ID:XBuBF2Rc(1) AAS
#!/bin/sh
echo このプログラムが起動するのは一度きりである。実行ののち、消去される。
\rm -f $0
708: 2019/10/06(日)20:16 ID:lJB/egMg(2/2) AAS
lol $0 じゃなくて / にしてるのかwww
709: 2019/10/06(日)20:19 ID:bPt7YQEe(1) AAS
>>707みて、できなくはないが、やりたくない気分になった。
外部リンク[html]:www.t-net.ne.jp
上記を使えば、PGからコマンドラインに干渉できる。が!ねぇ・・・。
場所もargc[0]に書いてあるんだけどねぇ・・・。

WA.
710: 2019/10/06(日)21:19 ID:QZjIPE+j(1) AAS
シェルスクリプト総合 その31
2chスレ:tech
711: 2019/10/07(月)13:22 ID:lSqRbxbA(1) AAS
>>703
Linux等のUNIX系OS

at now +1 min

などとやって at job が一分後に動くようにして次の1行を入力してから Ctrl+D で終了させる。

echo 'このプログラムが起動するのは一度きりである。実行ののち、消去される。'

その後1分待つと上記文言の出力後 at job は削除される。
省2
712: 蟻人間 ◆T6xkBnTXz7B0 2019/10/07(月)18:38 ID:tyyduGK2(1) AAS
>>703 C++/Win32

#include <windows.h>
#include <stdlib.h>
#include <stdio.h>
int main(int argc, char **argv)
{
printf("このプログラムが起動するのは一度きりである。実行ののち、消去される。\n");
FILE *fp = fopen("delete-me.bat", "w");
fprintf(fp, "@echo off\n");
fprintf(fp, ":retry\n");
省7
713
(1): 2019/10/07(月)22:21 ID:aU+ghkHH(1/3) AAS
>>703 Perl5

print "このプログラムが起動するのは一度きりである。実行ののち、消去される。\n";
unlink $0;

実行結果
~ $ perl 15_703.pl
このプログラムが起動するのは一度きりである。実行ののち、消去される。
~ $ ls -o 15_703.pl
/usr/bin/ls: cannot access 15_703.pl: No such file or directory

嫌なプログラミンッグだな、一歩書き間違がや大参事。
こういうお題はご遠慮願いたいものだ…
714
(1): 2019/10/07(月)22:32 ID:aU+ghkHH(2/3) AAS
すまぬ >>713 は題意とは違うな。
プログラムの実行が終了してから削除されるわけか…

>>703 bash

(sleep 4; rm -f $0)&
echo このプログラムが起動するのは一度きりである。実行ののち、消去される。

実行結果
$ bash 15_703.sh
… 数秒後
$ ls -o 15_703.sh
ls: 15_703.sh にアクセスできません: No such file or directory
715: 2019/10/07(月)22:35 ID:aU+ghkHH(3/3) AAS
>>714 実行結果貼りそこなったorz

$ bash 15_703.sh
このプログラムが起動するのは一度きりである。実行ののち、消去される。
$ ls -o 15_703.sh
-rw-r--r-- 1 ******** 98 10月 7 22:29 15_703.sh
… 数秒後
$ ls -o 15_703.sh
ls: 15_703.sh にアクセスできません: No such file or directory
716: 2019/10/07(月)23:18 ID:Hq5Oz5C1(1) AAS
MSX BASIC
10 print"オハヨウフェルペスクン,コンカイノキミノニンムダガイカリャクナオコノテープハジドウテキニショウメツスル"
20 new
717: 2019/10/07(月)23:48 ID:ti3U/Qjr(1) AAS
>>703
外部リンク:ideone.com
C++。自分ができるのはここま・・・で・・・だ。。。

うぼぁあああああああ。
718: 蟻人間 ◆T6xkBnTXz7B0 2019/10/07(月)23:54 ID:9cpaLYwd(1) AAS
実行時にexeにロックがかかるから、実行終了を待つsystem関数では消せないんだ、これが。
719: 蟻人間 ◆T6xkBnTXz7B0 2019/10/08(火)00:32 ID:LPLIE15X(1) AAS
拡張子.batはコマンドプロンプトのバッチファイルを表す。
720
(1): 2019/10/08(火)01:09 ID:LQA6uDl1(1/7) AAS
外部リンク:ideone.com
C++&.
721: 2019/10/08(火)01:10 ID:LQA6uDl1(2/7) AAS
>>720
C++&Windows.
おかしなキーコンビネーションで投稿してしまったが、それは置いといて。
結構な沼だったわ。
722: 2019/10/08(火)01:14 ID:LQA6uDl1(3/7) AAS
あ、数秒後にタスクを実行したかったが、分単位にしかならないようだ。
723: 2019/10/08(火)01:31 ID:YlPtBjRn(1) AAS
どM乙。
724: 2019/10/08(火)02:43 ID:LQA6uDl1(4/7) AAS
外部リンク:ideone.com
C++&Windows. 結局バッチ作ってバッチを削除するようにした。
725: 2019/10/08(火)02:45 ID:LQA6uDl1(5/7) AAS
C++で書いている意味があまりないなぁ。
頭がこんがらがってくるわ。
726: 2019/10/08(火)03:07 ID:LQA6uDl1(6/7) AAS
タスクスケジューラには一個のタスクしか持たせることができません。
タスクスケジューラの健康のために削除タスクと削除タスクをkillするタスクを入れたという欲が出ました。
さて、どうすればよかったのでしょうか・・・。
727: 2019/10/08(火)03:25 ID:LQA6uDl1(7/7) AAS
外部リンク:ideone.com
チョットシンプルになった。
けど、ただスケジュールしてバッチファイル作るだけになっちゃった・・・。Orz

ううううううぼぉぉぉおあぁぁぁあああ。。。
728: 2019/10/08(火)18:18 ID:9WsdIwSr(1) AAS
おしい
729
(1): 2019/10/08(火)22:43 ID:8UaWwWzr(1) AAS
「インターネットには戦力外通告とかが無いから頭の悪い人がいつまでも打席に立って三振し続ける」
730: 2019/10/09(水)01:57 ID:vwSn6CxZ(1) AAS
お題: TCPデータグラムが流れてくるのでFINフラグが立っていたら「切断します」と出力せよ
731: 2019/10/10(木)00:51 ID:P0sO6qGI(1) AAS
>>729
IT分野の実社会では、単価にそれほど差がないのをいいことに
パーフォマンダウンによる差額で利ざやを稼ごうという
商売が横行して、結果としてIT分野が廃れている

だから。こまけーこたー いいんだよ
732: 2019/10/10(木)19:10 ID:Tobvh7XK(1) AAS
>>703
Windows10で、普通に↓で消せた。
外部リンク:ideone.com
733
(1): 2019/10/10(木)19:12 ID:AtKsFWU7(1) AAS
>>690 解けた人いない?
734: 2019/10/10(木)19:14 ID:0pYFH17C(1) AAS
>>733
手では解いた
総当たり以外に思い浮かばん
735
(1): 2019/10/10(木)20:46 ID:78OW/ryc(1) AAS
いやお題はパズルを解けじゃなくてパズルのソルバーの実装だからwww
736: 蟻人間 ◆T6xkBnTXz7B0 2019/10/10(木)21:25 ID:VnnXeZwz(1) AAS
古典的な人工知能の探索アルゴリズムを研究すれば、この程度のソルバーは作れる。
737: 2019/10/10(木)21:48 ID:PZRS9XbT(1) AAS
つまり研究しないと作れないってことか。
738: 2019/10/10(木)23:09 ID:gSAdFsTs(1) AAS
>>735
だから総当たり以外思い浮かばなかったって言ってるだろ
739: 2019/10/11(金)00:08 ID:1+VMU1fD(1) AAS
>>690
ここの↓にすごい悩んだ。
外部リンク:regexcrossword.com
Ambiguousの意味を知らずに・・・・・
740
(1): 2019/10/11(金)01:56 ID:H4pwkZny(1) AAS
いや総当たりでも出来たなら貼ってくれや。
別に総当たりでも恥ずかしくもなんともないと思うが…
741
(1): 2019/10/11(金)08:53 ID:MNDgolhS(1) AAS
貼りたくねえ
総当たり出できたものを他人のために見せる必要性もないし
742: 2019/10/11(金)09:03 ID:Cra8acMD(1) AAS
できた!
みせて。
見せたくない!

うーん…
743: 2019/10/11(金)09:08 ID:pcktkYLP(1) AAS
;フェルマーの最終定理
744
(11): 2019/10/11(金)21:55 ID:zKaC3xv0(1) AAS
お題:0〜9999の整数について数字和を求め、数字和の頻度を集計せよ

ocaml
外部リンク:ideone.com

c
外部リンク:ideone.com

octave
外部リンク:ideone.com

ruby
外部リンク:ideone.com
745: 2019/10/11(金)22:38 ID:hqLUiXPo(1) AAS
>>744
外部リンク:ideone.com
C++。最初サンプルと違う答えになってビビったけど、俺のコードがバグっていた・・・。Orz
746: 2019/10/11(金)22:44 ID:poa9EnRO(1) AAS
すんごく二項定理っぽい数字の並び方をしてる
747: 2019/10/11(金)23:16 ID:GtQsvrI7(1) AAS
>>744 Java
外部リンク:ideone.com

プログラミングのお題スレ Part9 [無断転載禁止](c)2ch.net
2chスレ:tech
昔書いたこれ(上の136)を流用
748
(2): 2019/10/11(金)23:53 ID:jSXBX1w1(1) AAS
>>744
これって0~9999じゃなくて任意の2つの数字入力させてとかだと愚直に計算するしかない?
749: 2019/10/12(土)00:32 ID:Cxdg6QkN(1) AAS
>>748
うまくやれば出来そうだがまだ思いつかん
751: 2019/10/12(土)11:07 ID:ewC1g8Dg(2/2) AAS
いかん。すまん。出力が安価になってしまった。
752: 2019/10/12(土)11:31 ID:zNYc1jm8(1) AAS
lol
1-
あと 249 レスあります
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル アボンOFF

ぬこの手 ぬこTOP 0.070s