結果
問題 | No.378 名声値を稼ごう |
ユーザー | itezpace |
提出日時 | 2016-06-17 22:46:47 |
言語 | C++11 (gcc 11.4.0) |
結果 |
AC
|
実行時間 | 2 ms / 2,000 ms |
コード長 | 528 bytes |
コンパイル時間 | 1,240 ms |
コンパイル使用メモリ | 146,392 KB |
実行使用メモリ | 4,380 KB |
最終ジャッジ日時 | 2023-09-12 00:51:25 |
合計ジャッジ時間 | 1,773 ms |
ジャッジサーバーID (参考情報) |
judge13 / judge15 |
(要ログイン)
テストケース
テストケース表示入力 | 結果 | 実行時間 実行使用メモリ |
---|---|---|
testcase_00 | AC | 2 ms
4,376 KB |
testcase_01 | AC | 2 ms
4,380 KB |
testcase_02 | AC | 1 ms
4,376 KB |
testcase_03 | AC | 1 ms
4,380 KB |
testcase_04 | AC | 2 ms
4,380 KB |
testcase_05 | AC | 2 ms
4,376 KB |
コンパイルメッセージ
main.cpp: In function ‘int main()’: main.cpp:20:6: warning: ‘p’ may be used uninitialized in this function [-Wmaybe-uninitialized] ll p; ^
ソースコード
#include <bits/stdc++.h> using namespace std; typedef long long ll; int main(){ ll n; cin>>n; ll a=0; vector<ll> v; for(ll i=n; i>0; i/=2){ v.push_back(i); } for(ll i=0; i<v.size(); ++i){ a+=v[i]; } ll b=0; ll c=0; ll p; for(ll i=0; i<v.size()-1; ++i){ b=2*v[i]; for(ll j=i+1; j<v.size(); ++j){ c+=v[j]; } if(b>c){ p=i; break; } else { c=0; } } ll d=0; for(ll i=0; i<p; ++i){ d+=v[i]; } d+=2*v[p]; cout<<d-a<<endl; return 0; }