競プロ中に複数回調べたこと
競技プログラミング中に私が複数回調べたことです。 普段は python を使っており c++ の文法には不慣れです。
出力
少数桁の固定
小数点以下 10 桁まで出力するならば。
cout << fixed << setprecision(10) << ans << endl;
ラムダ式
[&](引数) -> 戻り値型 {関数}
例
// ABC240 F
auto f = [=](ll D, ll d, ll m) -> ll {
return D + m * d + x * (m + 1) * m / 2;
};
引っかかったとこ
long long で宣言しても 1 << 60 は 0 になる。
int main() {
int a = 1 << 60;
long long b = 1 << 60;
long long c = 1LL << 60;
long long d = 1;
d <<= 60;
printf("a: %d\nb: %lld\nc: %lld\nd: %lld", a, b, c, d);
}
/*
a: 0
b: 0
c: 1152921504606846976
d: 1152921504606846976
*/
2021 05 12