C++

C++のstringを触るときのアレコレ

C++

置換 replace()を使用する. string.replace(int begin_pos, int n, string str); stringのbegin_pos文字目(0オリジン)からn文字を削除してstrを挿入 nはstr.length()と一致する必要がないのでいい感じに置換できる ただし,置換元の文字数が分かっていな…

B: ドローン - AtCoder Beginner Contest 035

B: ドローン - AtCoder Beginner Contest 035 | AtCoder ACしたソースコード 最後の1点が取れなかった考察 制約条件から,T=2だけWAしていることが分かる. 「?」の数をk,dis=|x|+|y|とする. まず,「?」は三種類の挙動が考えられる. 原点方向に戻るだけ…

B - 島と橋

B: 島と橋 - AtCoder Beginner Contest 027 | AtCoder が解けない.ので考察を書きます. 2016/09/29 ACしました. //そもそも,すべての島に同じ人数の住人が住んでいないか?の出力が人口になっていて,WAしていました. 全部の橋掛けのパターンを行列か何…

vectorとsetとmapと

vector,set,mapをよく間違えるのでメモ. vector 配列っぽいもの だいたいの関数はstringでも使えるので記憶力をあまり使わないで済むことに気付いた 追加:vector.push_back(src); 先頭参照:vector.front(); begin()はイテレーターを返却するが,front()…

C++のstd::transform()の引数

C++

transform(文字列の始点, 文字列の終点, 変換した文字列を代入する始点, 大文字or小文字, よく分からない) 目的 与えられたアルファベット文字列の一部の大文字/小文字を変換したい. 具体的には,B: 名前の確認 - AtCoder Beginner Contest 011 | AtCoder.…

C++のいろいろなstring::find()

C++のstring::find()の多重定義されているアレコレ. 2017/11/18 追記:str.find()の返却値はsize_t型なのでキャストが必要です. 以下はキャストしなくても当時は動きましたが,保証されるものではありません.キャストしてください. 説明 stringとcharで…

0埋めの連番が振ってあるファイル名を得たい

C++で,0埋めの連番が振ってあるファイル名を,stringに収めるには,iomanipを使い,stringstreamを通す. ループしなくてもいい方法があればご教授ください. 目的 連番が振ってあるファイル名をstringに収めたい(そしてifstreamで開いて処理したい). 問…