1. なぜ 998244353 で割るのか? 最初はこのような設問を見るとぎょっとしてしまいますが、実はとても自然な問題設定です。 $998244353$ で割らないと、答えの桁数がとてつもなく大きくなってしまうことがあります。このとき以下のような問題が生じます: 多倍長整数がサポートされている言語とされていない言語とで有利不利が生じる 10000 桁にも及ぶような巨大な整数を扱うとなると計算時間が膨大にかかってしまう 1 番目の事情はプログラミングコンテストに特有のものと思えなくもないですが、2 番目の事情は切実です。整数の足し算や掛け算などを実施するとき、桁数があまりにも大きくなると桁数に応じた計算時間がかかってしまいます。実用的にもそのような巨大な整数を扱うときは、いくつかの素数で割ったあまりを計算しておいて、最後に中国剰余定理を適用して復元することも多いです。 なぜ 9982443

This is open-source software written by hobbyists, maintained by a single volunteer, badly tested, written in a memory-unsafe language and full ofsecurity bugs.It is foolish to use this software to process untrusted data. As such, we treatsecurity issues like any other bug. Eachsecurityreport we receive will be made public immediately and won't be prioritized. これは趣味人たちによって開発され、たった一人のボランティアによっ

ホーム >報道・広報 >報道発表資料 >地理空間情報を活用したデータ分析コンペティションを今年度も開催します ~不動産売買価格の予測モデル構築をテーマに、国土数値情報の活用可能性をさらに拡げる~ 地理空間情報を活用したデータ分析コンペティションを今年度も開催します ~不動産売買価格の予測モデル構築をテーマに、国土数値情報の活用可能性をさらに拡げる~ ・データサイエンティスト等の高度IT人材による地理空間情報の利用シーン拡大を目的とし、「不動産売買価格の予測モデル構築」をテーマとした、「第2回 国土交通省 地理空間情報データチャレンジ」を開催します。(実施概要は別紙1を参照ください。) ・令和6年度、国土交通省初のデータ分析コンペティション「第1回 国土交通省 地理空間情報データチャレンジ~国土数値情報編~」(詳細は別紙2を参照ください。)を開催し、総勢1,500名超が参加し大成功を収めまし

Pandasの read_csv における欠損値文字列の扱いPythonのデータ解析ライブラリPandasでは、CSVファイルを読み込む際(pd.read_csv())、特定の文字列が自動的に NaN (欠損値)として扱われるという仕様があります。 ドキュメントによると、デフォルトで以下の値がNaNと解釈されます。 By default the following values are interpreted as NaN: “ “, “#N/A”, “#N/A N/A”, “#NA”, “-1.#IND”, “-1.#QNAN”, “-NaN”, “-nan”, “1.#IND”, “1.#QNAN”, “<NA>”, “N/A”, “NA”, “NULL”, “NaN”, “None”, “n/a”, “nan”, “null “. 実際に起きた問題: 野根(None) という地名

TL;DR あるリソースの fetch 中にページ遷移すると、一部ブラウザでは fetch が中断される 中断されると、TypeError が throw される ページ遷移時は、ブラウザによって遷移前のページの実行が"停止"され、"捨てられる"ので、通常 throw された後のことは考えなくて良い しかし、そのページが Back/Forward Cache から復元されうるなら、話は別 ブラウザバックすると、エラーが throw された後からページが再開される!!! そして発生する、奇妙な現象の数々... はじまりは、あるサービスの不具合報告 ある日、「Webサービスから外部サービスにページ遷移した後、ブラウザバックで戻ると、エラー画面が表示される」という不具合が報告された。どうもWebサービスのErrorBoundary で何かしらのエラーが catch され、それによってエラー画
はじめに ある日会社で「次のプロジェクトはPython でやってほしい」と言われました。普段はずっと Node.js を触ってきたので、「まあ文法がちょっと違うくらいでしょ」と軽く考えていました。async/await もあるし、動的型付け言語だし、きっとすぐ慣れるはず……。 ところが実際に触ってみると、思っていた以上に“違い”が多かったんです。予想通りな部分もあれば、「えっ!?」と声が出たような挙動もありました。そして、中には「こっちの方が分かりやすい!」と感動したものも。 この記事では、Node.js からPython に移って最初の数週間で気づいたこと、つまずいたことをまとめてみました。 スコープ:最初の「え、まじで?」JavaScript の世界では、let や const でブロックスコープを当たり前のように使います。だからPython でこんなコードを書いたとき――

ぷよぷよプログラミングはセガが2020年に無料公開した、ゲームのソースコードを書き写し、ぷよぷよのプレイ画面を確認しながらコーディングを学ぶ教材。小学校でプログラミング教育が必修化した時期だったこともあってSNSなどで話題になり、同年以降も副教材の追加や、セガによる出張講座などが行われている。 関連記事 プログラミング初心者も「“ぷよ”が動いた!」の感動を 着想から7年、ぷよぷよの教材が生まれた理由 コード入力すると“ぷよ”が動くぷよぷよのプログラミング教材が登場。教材を作った経緯や理由を開発者に聞いた。 青学初等部が「ぷよぷよ」のプログラミング教材で授業 青山学院初等部は5月14日から6月25日にかけて、対戦アクションパズルゲーム「ぷよぷよ」のソースコードを使ったプログラミング教材「ぷよぷよプログラミング」を活用した授業を行った。セガが開発した小学生向けカリキュラムを活用し、子供たちにゲ

はじめに 最近、ふと気づいたことがある。技術負債って、もう昔とは全然違うゲームになってるんじゃないか?いや、もっと正確に言うなら、ゲーム自体が終わろうとしているんじゃないか?コーヒーを飲みながら、10年前に書いた自分のコードを眺めていた。当時は「きれいに書いた」つもりだったけど、いくつかの要望がありよく考えずに変更を加えた結果、負債の塊だ。でも、それを直すのに必要な時間とコストの計算が、根本的に変わってしまった。 いや、変わったどころか、もはや「時間とコスト」という概念すら意味をなさなくなりつつある。 syu-m-5151.hatenablog.com 私たちは技術負債を「悪いコード」として理解してきた。しかし、それは大きな誤解だった。Ward Cunninghamが1992年に生み出した原初の概念は、現在広く信じられている「技術的問題」とは根本的に異なっていた。 彼の言う負債とは、ソフ

前提条件"現状"とはつまり2025年5月時点の話であり、動向が非常に変わりやすいIT業界の風土を考えると将来的にどのようになるかは予測が非常に難しい。 しかし、数年でこの"現状"が変化するとは考えにくく、今現在の学生が10年以内に社会人となったとき今現在の"現状"を基礎に情報技術を学んでいる可能性が高く、このエントリでは"現状"を周知する為に書かれた。 現状のICT教育OSシェア集計した時期や団体で数値の変動はあるが、日本国内で現状のICT教育でのOSシェアはChromeOSがおおむね30〜40%というシェアを獲得しており、IT大国と知られているアメリカでは日本と同様に集計した時期や団体で数値の変動はあるがおおむね50〜60%というシェアであり、ICT教育のOSとしてChromeOSがデファクトスタンダードとなっている。 これは、テックファンがよく語るように「ChromeOS端末が安価で導

Windymelt💀(めるくん)🚀❤️🔥 @windymelt 日本中のアマチュア動画制作の現場で使われていると言っても過言ではないaviutl、ossではないどころかソースコードも非公開だったはずで、縁起でもない話だが作者がうっかり死んでしまった場合には永遠にメンテナンスが不可能になることを意味しているのだが、それでいいんだろうか。 2025-03-26 19:46:45 Windymelt💀(めるくん)🚀❤️🔥 @windymelt たしかaviutlはバイナリ配布なので、仮にメンテナンスできなくなったとしたら、OSかCPU命令セットのどっちかのマジョリティが破壊的に変化したらもう終わりという認識(巻き添えでdllも動かなくなる) 2025-03-26 19:53:13

JavaScript(ECMAScript)の国際化API、「Intl」について紹介する1人 Advent Calendar です。 2024末時点でのIntl仕様と提案されているProposalを広く紹介することをゴールとしています。合わせてIntlに関連する仕様についても端端で紹介できたらなと思っています。 機能・ドメイン的に関連する話題をまとめて紹介していくので、「既存仕様→関連するProposal」の順で繰り返す流れになる予定です。基本的な機能だけ知りたいよと言う方は適宜読み飛ばしてください。

import './main.css'; import * as THREE from 'three'; import { TrackballControls } from 'three/examples/jsm/controls/TrackballControls.js'; import { OrbitControls } from 'three/examples/jsm/controls/OrbitControls.js'; // シーンの作成 const scene = new THREE.Scene(); // カメラ const camera = new THREE.PerspectiveCamera(75, window.innerWidth / window.innerHeight, 0.1, 100000); camera.position.set(100, 100, 10
30分でブロックチェーンエンジニアになれる薄い本を作りました この本について ブロックチェーン開発に興味はあるけれど、最初の一歩が踏み出せない方向けの入門ガイドです。コーヒーを飲む時間で読める薄さ(A5サイズ想定、約30ページ)にまとめました。基本的なトランザクション発行と確認までを、説明とサンプルコードで解説しています。ちょことコラムもあります。フライヤー的に配るくらいのイメージです。 わかる人には見えない壁があるそうで、複数名のかたにzoomで個別レッスン(伴走型)をして、どこでつまづくのかを一緒に検証しました。本書のレビューもしていただきました。 レビュワー様のありがたきお声の抜粋 Aさん:トランザクション作成でaliceオブジェクトとBobオブジェクトをブラウザ上に生成させるところでごっちゃになってたけどこれならできた。 Bさん:ネットにもたくさん良い情報があるが、バラバラになっ

協定世界時(UTC)で2038年1月19日午前3時14分08秒になると、プログラムがエラーを起こす「2038年問題」。この問題への対応は難しく、インターネットで公開されている人気のオープンソースソフトウエア(OSS)であっても課題が多く残っていることが、立命館大学の研究チームによる調査で明らかになった。 2038年問題は、1970年1月1日0時0分0秒からの経過時間で時刻を表現する「UNIX時間」を採用するシステムで、経過上限の約21億秒を超えることで発生するトラブルである。 UNIX時間を32ビットの符号付き整数で定義している場合、上限値を超えると時刻データの最初のビットが負の数を表す「1」となるため、時刻が1970年1月1日0時0分0秒から約21億秒巻き戻った1901年12月13日20時45分52秒になる。時刻がおかしくなることで、プログラムにエラーが発生して異常終了したり、表示がおか

リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く