山傘のプログラミング勉強日記

プログラミングに関する日記とどうでもよい雑記からなるブログです。

C++でint128を使いたい。

int128

AtCoder Library が int128 を要求していますが、僕のC++の環境は MinGW の32ビット版を使用していたので、int128 を使うことができませんでした。

MSYS2

結構前に Codeforces が int128 をサポートしたみたいなので、64ビット版の環境を構築しようと思い、MSYS2をインストールしました。

導入は、

blogs.osdn.jp

をそのままやったんですが、gccのバージョンが10.2.0となってしまいました。Codeforces のバージョンは 9.2.0 らしいので、ダウングレードする必要がありました。

なので、

pacman -S mingw-w64-x86_64-gcc

は実行せずに、ダウングレードについて調べました。

stackoverflow.com

の質問を見ると、古いパッケージが必要なので、

pacman -U http://repo.msys2.org/mingw/x86_64/mingw-w64-x86_64-gcc-libs-9.2.0-2-any.pkg.tar.xz

pacman -U http://repo.msys2.org/mingw/x86_64/mingw-w64-x86_64-gcc-9.2.0-2-any.pkg.tar.xz

を実行しました。

あとは、環境変数に "D:\Program\msys64\mingw64\bin" を追加してgccコマンドが使えるようになりました。

感想

そもそも、gcc と g++の違いや、Codeforces の g++ 17 9.2.0 の数字の意味が分からず、どうすればいいのか迷ってました。

今のところは問題なく使えてますが、トラブルが起きたらまた環境構築しようと思います。WSLを使うのが流行りらしいですね?

問題解決能力を鍛える!アルゴリズムとデータ構造 Part. 1

問題解決能力を鍛える!アルゴリズムとデータ構造

問題解決力を鍛える!アルゴリズムとデータ構造 (KS情報科学専門書)

問題解決力を鍛える!アルゴリズムとデータ構造 (KS情報科学専門書)

  • 作者:大槻 兼資
  • 発売日: 2020/10/02
  • メディア: 単行本(ソフトカバー)

続きを読む

VSCode でDartファイルの run | debug を消す

Dart

FlutterではなくDartだけのファイルを作成したいときに、VSCodeを使おうと思い導入したんですが、気になることがありました。

続きを読む

Galaxy A7 の保護フィルム

Galaxy A7

今Galaxy A7を使っている人は大体が楽天モバイルで購入した人だと思います。デフォルトで保護フィルムが貼られていないので、自分で用意する必要があります。

続きを読む