| 今日 | - |
| 昨日 | - |
| 合計 | - |
このページ/子ページでは, 第二回合同練習会 で扱われた問題に対する, @Mi_Sawa の解答を載せています.
全てが正しいとは限りません. コメントやツッコミ等あれば, twitterか, 各ページの一番下のコメント欄でお願いします.
各ページでは省くが, 次のようなコードを前提とし, solve() 関数を実装した. (コンテスト中は, 最初に全て書くことはせず, 必要に応じて追加する.)
- #include <iostream>
- #include <string>
- #include <vector>
- #include <cmath>
- #include <cstdlib>
- #include <set>
- #include <map>
- #include <queue>
- #include <stack>
- #include <complex>
- #include <iomanip>
-
- // 今回はforeachでしか用いていない.
- #define let(v, x) typeof(x) v = (x)
- // b <= i < n なる i についてループする.
- #define REP(i,b,n) for(int i=(int)(b);i<(int)(n);++i)
- // 0 <= i < n なる i についてループする.
- #define rep(i,n) REP(i,0,n)
- #define sz(v) ((int)v.size())
- // 0 <= i < v.size() なる i についてループする.
- #define repsz(i, v) rep(i, sz(v))
- // v.begin() から v.end() までイテレータを回す.
- #define foreach(i,v) for(let(i, (v).begin());i!=(v).end();i++)
- #define pb push_back
- #define fst first
- #define snd second
- #define all(x) (x).begin(),(x).end()
- static const int INF = 1<<25;
- static const double EPS = 1e-5;
- using namespace std;
- typedef long long ll;
- typedef vector<int> vi;
- typedef vector<vi> vvi;
- // a を a と b の小さい方で更新する.
- template<class T> T mineq(T &a, const T &b){ return a = min(a, b); }
- // a を a と b の大きい方で更新する.
- template<class T> T maxeq(T &a, const T &b){ return a = max(a, b); }
-
- // 各ケースについて, 解く.
- // ケースの終わりでは, false を返す.
- // 具体的には, 例えば, 入力の終わりに 0 が入るとかなら,
- // int n; cin >> n;
- // if(n == 0) return false;
- // // 問題を解く
- // return true;
- // のようなコードが入る.
- bool solve(){
-
- return true;
- }
- int main(){
- // 出力が実数な場合は, 桁数を増やす為,
- // cout.setf(ios::fixed); cout.precision(10);
- while(solve());
- // 最初にケース数が来る場合は,
- // int n;
- // cin >> n;
- // rep(i, n) solve();
- return 0;
- }