タグ

技術とqiitaに関するcaffephiliaのブックマーク (5)

  • [速習] 配列から欠けている数字を見つける「XORトリック」の深い理論と実践 - Qiita

    皆さんは『配列から欠けている数字を見つけろ』と言われたら、どう答えますか? 多くの方は「HashSetで解けばいい」と考えるでしょう。しかし、1000万個の要素で実測したところ、Pythonのsetは945MBもの追加メモリを消費し、処理に2.3秒かかりました。一方、XORを使った解法は追加メモリゼロ、C言語なら1ミリ秒で完了します。 なぜこれほどの差が生まれるのか? XORには単なるトリック以上の深い理論があり、配列の欠損値検出だけでなく、RAID 5のデータ復元やネットワークのエラー検出など、実務で幅広く応用されているのです。 追記: ネットワーク転送時のパケットロスやノイズによるデータ欠損、さらには宇宙線がメモリに衝突してビットが反転する「ソフトエラー」により、配列から要素が失われることがあります。 記事では、Florian Hartmannの「That XOR Trick」1を基

    [速習] 配列から欠けている数字を見つける「XORトリック」の深い理論と実践 - Qiita
    caffephilia
    caffephilia 2025/07/07
    「まず『配列から欠けている数字を見つけろ』とはどういう意味ですか?」って聞く。いやマジで「配列から欠けている数字を見つける」って何?配列中の最小値と最大値の間の欠けている数字を見つける?(読んでない)
  • 結局 Git のブランチ戦略ってどうすればいいの? - Qiita

    1つのIssueが大きくなると1 Pull Requestで大量の差分が発生します。 そうなるとレビュワーに負担がかかり、コンフリクトの可能性も高まり、コードレビューを効率よく進めることができません。 このINVEST原則を守ることでチームはより効果的に作業を進め、柔軟に対応して開発を進めることができます。 Git Flow Git Flowは5種類(main, hotfix, release, develop, feature)のブランチを運用するブランチ戦略です。 2010年に提唱された有名なブランチ戦略です。 オンラインサービスのように継続的デリバリーするコードを想定して作られた戦略ではないです。 main ブランチ 常にリリースできる状態を保つ hotfix, develop へ切り出す このブランチへの直pushはNG hotfix ブランチ バグ修正など緊急時に対応するためのブ

    結局 Git のブランチ戦略ってどうすればいいの? - Qiita
  • 敵対的プロンプト技術まとめ - Qiita

    こんにちは@fuyu_quantです。 この記事はLLM Advent Calender 2023 17日目の記事です。 よかったらプライベートで作成したData Science wikiのGPTsも見て下さい! はじめに 今回は敵対的なプロンプト技術についてまとめました.まとめ方は主に,Ignore This Title and HackAPrompt: Exposing Systemic Vulnerabilities of LLMs through a Global Scale Prompt Hacking Competition というLLMに対する敵対的なプロンプト技術に関してまとめた論文を参考にしています.記事の内容が世の中のLLMを使ったサービスの機能向上の役に立てれば幸いです. ※世の中のLLMサービスが敵対的なプロンプト手法に対応できるように公開をしたものであり,利用を

    敵対的プロンプト技術まとめ - Qiita
  • Youtubeは無限のクラウドストレージ - Qiita

    みなさん、こんな経験はありませんか もちろんありますよね。ということで無料で無限にクラウドストレージを使う方法を考えました。(月額130円で50GBは破格だけど) Youtube好き 今回使うのはYoutubeです。ほぼ全員Youtubeを見たことあると思いますが、Youtubeに動画をあげたことがある人はあんまりいないんじゃないでしょうか。 なんとこのYoutube、動画のアップロード数に制限がありません!!!じゃあファイルを動画にしてアップロードしたら好きな時にダウンロードして使えるじゃん。 動画化の方法 ということでやっていきます。まず、ファイルを動画化する方法を考えます。 すべてのファイルはバイト列なので、そいつらをそのまま画像のピクセルにして、そいつらを動画にしたらいいんじゃないかというのが一番最初に思いつくと思いますが、それは甘いです。甘すぎます。 Youtubeに動画をアップ

    Youtubeは無限のクラウドストレージ - Qiita
    caffephilia
    caffephilia 2023/11/22
    おもしろい。Base64 はデータ量比 133..137% らしいけどこれだとどれぐらいになるんだろ
  • シグナルハンドラにprintf()を書いてはいけない - Qiita

    三行でまとめると シグナルハンドラ内でprintf()してはいけない というより、余計な処理を書いてはいけない もう一度言う、シグナルハンドラで余計なことをするな、非常に大事なことだ はじめに シグナルハンドラでやってよい処理は非常に限られるのに、全くルールを守らないサンプルコードが世の中に大量に出回っている。printf()するなんてもってのほかなのだが、カジュアルにそこらじゅうで見かけて非常に悲しい。 この記事では、そんな状況を少しでも改善したいと思い初心者向きに書いたものだ。そのため、下記では、回避するにはどう実装すればよいのか、ルールを破るとどうなるのか、といった点を先に簡潔に記述する。 なぜしてはいけないのか、POSIXだとかリエントラントだとか、は下の方に追いやっている。玄人は読んでてウズウズするだろうが、細かい話はできるだけ目につかないような構成としたため了解いただきたい。

    シグナルハンドラにprintf()を書いてはいけない - Qiita
  • 1