File Annotation
Not logged in
ba4cf1f68f 2019-07-19        kinaba: #include <iostream>
ba4cf1f68f 2019-07-19        kinaba: #include <sstream>
ba4cf1f68f 2019-07-19        kinaba: #include <iomanip>
ba4cf1f68f 2019-07-19        kinaba: #include <vector>
ba4cf1f68f 2019-07-19        kinaba: #include <string>
ba4cf1f68f 2019-07-19        kinaba: #include <map>
ba4cf1f68f 2019-07-19        kinaba: #include <set>
ba4cf1f68f 2019-07-19        kinaba: #include <algorithm>
ba4cf1f68f 2019-07-19        kinaba: #include <numeric>
ba4cf1f68f 2019-07-19        kinaba: #include <iterator>
ba4cf1f68f 2019-07-19        kinaba: #include <functional>
ba4cf1f68f 2019-07-19        kinaba: #include <complex>
ba4cf1f68f 2019-07-19        kinaba: #include <queue>
ba4cf1f68f 2019-07-19        kinaba: #include <stack>
ba4cf1f68f 2019-07-19        kinaba: #include <cmath>
ba4cf1f68f 2019-07-19        kinaba: #include <cassert>
ba4cf1f68f 2019-07-19        kinaba: #include <tuple>
ba4cf1f68f 2019-07-19        kinaba: using namespace std;
ba4cf1f68f 2019-07-19        kinaba: typedef long long LL;
ba4cf1f68f 2019-07-19        kinaba: typedef complex<double> CMP;
ba4cf1f68f 2019-07-19        kinaba: 
ba4cf1f68f 2019-07-19        kinaba: static const unsigned MODVAL = 1000000007;
ba4cf1f68f 2019-07-19        kinaba: struct mint
ba4cf1f68f 2019-07-19        kinaba: {
ba4cf1f68f 2019-07-19        kinaba: 	unsigned val;
ba4cf1f68f 2019-07-19        kinaba: 	mint() :val(0) {}
ba4cf1f68f 2019-07-19        kinaba: 	mint(int      x) :val(x%MODVAL) {}
ba4cf1f68f 2019-07-19        kinaba: 	mint(unsigned x) :val(x%MODVAL) {}
ba4cf1f68f 2019-07-19        kinaba: 	mint(LL       x) :val(x%MODVAL) {}
ba4cf1f68f 2019-07-19        kinaba: };
ba4cf1f68f 2019-07-19        kinaba: mint& operator+=(mint& x, mint y) { return x = x.val + y.val; }
ba4cf1f68f 2019-07-19        kinaba: mint& operator-=(mint& x, mint y) { return x = x.val - y.val + MODVAL; }
ba4cf1f68f 2019-07-19        kinaba: mint& operator*=(mint& x, mint y) { return x = LL(x.val)*y.val; }
ba4cf1f68f 2019-07-19        kinaba: mint operator+(mint x, mint y) { return x += y; }
ba4cf1f68f 2019-07-19        kinaba: mint operator-(mint x, mint y) { return x -= y; }
ba4cf1f68f 2019-07-19        kinaba: mint operator*(mint x, mint y) { return x *= y; }
ba4cf1f68f 2019-07-19        kinaba: 
ba4cf1f68f 2019-07-19        kinaba: mint POW(mint x, LL e) { mint v = 1; for (; e; x *= x, e >>= 1) if (e & 1) v *= x; return v; }
ba4cf1f68f 2019-07-19        kinaba: mint& operator/=(mint& x, mint y) { return x *= POW(y, MODVAL - 2); }
ba4cf1f68f 2019-07-19        kinaba: mint operator/(mint x, mint y) { return x /= y; }
ba4cf1f68f 2019-07-19        kinaba: 
ba4cf1f68f 2019-07-19        kinaba: vector<mint> FAC_(1, 1);
ba4cf1f68f 2019-07-19        kinaba: mint FAC(LL n) { while (FAC_.size() <= n) FAC_.push_back(FAC_.back()*LL(FAC_.size())); return FAC_[n]; }
ba4cf1f68f 2019-07-19        kinaba: 
ba4cf1f68f 2019-07-19        kinaba: vector< vector<mint> > CP_;
ba4cf1f68f 2019-07-19        kinaba: mint C(int n, int k) {
ba4cf1f68f 2019-07-19        kinaba: 	while (CP_.size() <= n) {
ba4cf1f68f 2019-07-19        kinaba: 		int nn = CP_.size();
ba4cf1f68f 2019-07-19        kinaba: 		CP_.push_back(vector<mint>(nn + 1, 1));
ba4cf1f68f 2019-07-19        kinaba: 		for (int kk = 1; kk<nn; ++kk)
ba4cf1f68f 2019-07-19        kinaba: 			CP_[nn][kk] = CP_[nn - 1][kk - 1] + CP_[nn - 1][kk];
ba4cf1f68f 2019-07-19        kinaba: 	}
ba4cf1f68f 2019-07-19        kinaba: 	return k<0 || n<k ? 0 : CP_[n][k];
ba4cf1f68f 2019-07-19        kinaba: }
ba4cf1f68f 2019-07-19        kinaba: 
ba4cf1f68f 2019-07-19        kinaba: vector< vector<mint> > SP_;
ba4cf1f68f 2019-07-19        kinaba: mint S(int n, int k) {
ba4cf1f68f 2019-07-19        kinaba: 	while (SP_.size() <= n) {
ba4cf1f68f 2019-07-19        kinaba: 		int nn = SP_.size();
ba4cf1f68f 2019-07-19        kinaba: 		SP_.push_back(vector<mint>(nn + 1, 1));
ba4cf1f68f 2019-07-19        kinaba: 		for (int kk = 2; kk<nn; ++kk)
ba4cf1f68f 2019-07-19        kinaba: 			SP_[nn][kk] = SP_[nn - 1][kk - 1] + kk*SP_[nn - 1][kk];
ba4cf1f68f 2019-07-19        kinaba: 	}
ba4cf1f68f 2019-07-19        kinaba: 	return k<=0 || n<k ? 0 : SP_[n][k];
ba4cf1f68f 2019-07-19        kinaba: }
ba4cf1f68f 2019-07-19        kinaba: 
ba4cf1f68f 2019-07-19        kinaba: class FamilySeatingArrangement { public:
ba4cf1f68f 2019-07-19        kinaba: 	int countWays(vector <int> a, int k)
ba4cf1f68f 2019-07-19        kinaba: 	{
ba4cf1f68f 2019-07-19        kinaba: 		const int f = int(a.size());
ba4cf1f68f 2019-07-19        kinaba: 		const int nc = accumulate(a.begin(), a.end(), 0);
ba4cf1f68f 2019-07-19        kinaba: 		mint ans = 0;
ba4cf1f68f 2019-07-19        kinaba: 		for (int parentTable = 1; parentTable <= min(f, k); ++parentTable)
ba4cf1f68f 2019-07-19        kinaba: 			ans += POW(k - parentTable + 1, nc) * C(k, parentTable) * countParentWays(f, parentTable);
ba4cf1f68f 2019-07-19        kinaba: 		return ans.val;
ba4cf1f68f 2019-07-19        kinaba: 	}
ba4cf1f68f 2019-07-19        kinaba: 
ba4cf1f68f 2019-07-19        kinaba: 	// |p| people to |t| tables
ba4cf1f68f 2019-07-19        kinaba: 	mint countParentWays(int p, int t)
ba4cf1f68f 2019-07-19        kinaba: 	{
ba4cf1f68f 2019-07-19        kinaba: 		return S(p, t) * FAC(t);
ba4cf1f68f 2019-07-19        kinaba: 	}
ba4cf1f68f 2019-07-19        kinaba: };
ba4cf1f68f 2019-07-19        kinaba: 
ba4cf1f68f 2019-07-19        kinaba: // BEGIN CUT HERE
ba4cf1f68f 2019-07-19        kinaba: #include <ctime>
ba4cf1f68f 2019-07-19        kinaba: double start_time; string timer()
ba4cf1f68f 2019-07-19        kinaba:  { ostringstream os; os << " (" << int((clock()-start_time)/CLOCKS_PER_SEC*1000) << " msec)"; return os.str(); }
ba4cf1f68f 2019-07-19        kinaba: template<typename T> ostream& operator<<(ostream& os, const vector<T>& v)
ba4cf1f68f 2019-07-19        kinaba:  { os << "{ ";
ba4cf1f68f 2019-07-19        kinaba:    for(typename vector<T>::const_iterator it=v.begin(); it!=v.end(); ++it)
ba4cf1f68f 2019-07-19        kinaba:    os << '\"' << *it << '\"' << (it+1==v.end() ? "" : ", "); os << " }"; return os; }
ba4cf1f68f 2019-07-19        kinaba: void verify_case(const int& Expected, const int& Received) {
ba4cf1f68f 2019-07-19        kinaba:  bool ok = (Expected == Received);
ba4cf1f68f 2019-07-19        kinaba:  if(ok) cerr << "PASSED" << timer() << endl;  else { cerr << "FAILED" << timer() << endl;
ba4cf1f68f 2019-07-19        kinaba:  cerr << "\to: \"" << Expected << '\"' << endl << "\tx: \"" << Received << '\"' << endl; } }
ba4cf1f68f 2019-07-19        kinaba: #define CASE(N) {cerr << "Test Case #" << N << "..." << flush; start_time=clock();
ba4cf1f68f 2019-07-19        kinaba: #define END	 verify_case(_, FamilySeatingArrangement().countWays(a, k));}
ba4cf1f68f 2019-07-19        kinaba: int main(){
ba4cf1f68f 2019-07-19        kinaba: 
ba4cf1f68f 2019-07-19        kinaba: CASE(0)
ba4cf1f68f 2019-07-19        kinaba: 	int a_[] = {2,1}	;
ba4cf1f68f 2019-07-19        kinaba: 	  vector <int> a(a_, a_+sizeof(a_)/sizeof(*a_));
ba4cf1f68f 2019-07-19        kinaba: 	int k = 2;
ba4cf1f68f 2019-07-19        kinaba: 	int _ = 18;
ba4cf1f68f 2019-07-19        kinaba: END
ba4cf1f68f 2019-07-19        kinaba: CASE(1)
ba4cf1f68f 2019-07-19        kinaba: 	int a_[] = {2,1};
ba4cf1f68f 2019-07-19        kinaba: 	  vector <int> a(a_, a_+sizeof(a_)/sizeof(*a_));
ba4cf1f68f 2019-07-19        kinaba: 	int k = 3;
ba4cf1f68f 2019-07-19        kinaba: 	int _ = 129;
ba4cf1f68f 2019-07-19        kinaba: END
ba4cf1f68f 2019-07-19        kinaba: CASE(2)
ba4cf1f68f 2019-07-19        kinaba: 	int a_[] = {2,1};
ba4cf1f68f 2019-07-19        kinaba: 	  vector <int> a(a_, a_+sizeof(a_)/sizeof(*a_));
ba4cf1f68f 2019-07-19        kinaba: 	int k = 1000;
ba4cf1f68f 2019-07-19        kinaba: 	int _ = 989021965;
ba4cf1f68f 2019-07-19        kinaba: END
ba4cf1f68f 2019-07-19        kinaba: CASE(3)
ba4cf1f68f 2019-07-19        kinaba: 	int a_[] = {1,1,1,1,1,1,1,1,1,1,1,1};
ba4cf1f68f 2019-07-19        kinaba: 	  vector <int> a(a_, a_+sizeof(a_)/sizeof(*a_));
ba4cf1f68f 2019-07-19        kinaba: 	int k = 8;
ba4cf1f68f 2019-07-19        kinaba: 	int _ = 604306839;
ba4cf1f68f 2019-07-19        kinaba: END
ba4cf1f68f 2019-07-19        kinaba: CASE(4)
ba4cf1f68f 2019-07-19        kinaba: 	int a_[] = {1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20}	;
ba4cf1f68f 2019-07-19        kinaba: 	  vector <int> a(a_, a_+sizeof(a_)/sizeof(*a_));
ba4cf1f68f 2019-07-19        kinaba: 	int k = 211;
ba4cf1f68f 2019-07-19        kinaba: 	int _ = 775937801;
ba4cf1f68f 2019-07-19        kinaba: END
ba4cf1f68f 2019-07-19        kinaba: CASE(5)
ba4cf1f68f 2019-07-19        kinaba: int a_[] = { 1 };
ba4cf1f68f 2019-07-19        kinaba: vector <int> a(a_, a_ + sizeof(a_) / sizeof(*a_));
ba4cf1f68f 2019-07-19        kinaba: int k = 2;
ba4cf1f68f 2019-07-19        kinaba: int _ = 4;
ba4cf1f68f 2019-07-19        kinaba: END
ba4cf1f68f 2019-07-19        kinaba: CASE(6)
ba4cf1f68f 2019-07-19        kinaba: int a_[] = { 1 };
ba4cf1f68f 2019-07-19        kinaba: vector <int> a(a_, a_ + sizeof(a_) / sizeof(*a_));
ba4cf1f68f 2019-07-19        kinaba: int k = 1;
ba4cf1f68f 2019-07-19        kinaba: int _ = 1;
ba4cf1f68f 2019-07-19        kinaba: END
ba4cf1f68f 2019-07-19        kinaba: CASE(7)
ba4cf1f68f 2019-07-19        kinaba: int a_[] = {
ba4cf1f68f 2019-07-19        kinaba: 1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,
ba4cf1f68f 2019-07-19        kinaba: 1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,
ba4cf1f68f 2019-07-19        kinaba: 1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,
ba4cf1f68f 2019-07-19        kinaba: 1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,
ba4cf1f68f 2019-07-19        kinaba: 1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,
ba4cf1f68f 2019-07-19        kinaba: 1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,
ba4cf1f68f 2019-07-19        kinaba: 1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,
ba4cf1f68f 2019-07-19        kinaba: 1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,
ba4cf1f68f 2019-07-19        kinaba: 1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,
ba4cf1f68f 2019-07-19        kinaba: 1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,
ba4cf1f68f 2019-07-19        kinaba: 1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,
ba4cf1f68f 2019-07-19        kinaba: 1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,
ba4cf1f68f 2019-07-19        kinaba: 1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,
ba4cf1f68f 2019-07-19        kinaba: 1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,
ba4cf1f68f 2019-07-19        kinaba: 1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,
ba4cf1f68f 2019-07-19        kinaba: 1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,
ba4cf1f68f 2019-07-19        kinaba: 1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,
ba4cf1f68f 2019-07-19        kinaba: 1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,
ba4cf1f68f 2019-07-19        kinaba: 1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,
ba4cf1f68f 2019-07-19        kinaba: 1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,
ba4cf1f68f 2019-07-19        kinaba: 1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,
ba4cf1f68f 2019-07-19        kinaba: 1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,
ba4cf1f68f 2019-07-19        kinaba: 1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,
ba4cf1f68f 2019-07-19        kinaba: 1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,
ba4cf1f68f 2019-07-19        kinaba: 1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,
ba4cf1f68f 2019-07-19        kinaba: 1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,
ba4cf1f68f 2019-07-19        kinaba: 1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,
ba4cf1f68f 2019-07-19        kinaba: 1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,
ba4cf1f68f 2019-07-19        kinaba: 1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,
ba4cf1f68f 2019-07-19        kinaba: 1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,
ba4cf1f68f 2019-07-19        kinaba: 1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,
ba4cf1f68f 2019-07-19        kinaba: 1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,
ba4cf1f68f 2019-07-19        kinaba: 1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,
ba4cf1f68f 2019-07-19        kinaba: 1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,
ba4cf1f68f 2019-07-19        kinaba: 1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,
ba4cf1f68f 2019-07-19        kinaba: 1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,
ba4cf1f68f 2019-07-19        kinaba: 1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,
ba4cf1f68f 2019-07-19        kinaba: 1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,
ba4cf1f68f 2019-07-19        kinaba: 1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,
ba4cf1f68f 2019-07-19        kinaba: 1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,
ba4cf1f68f 2019-07-19        kinaba: 1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,
ba4cf1f68f 2019-07-19        kinaba: 1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,
ba4cf1f68f 2019-07-19        kinaba: 1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,
ba4cf1f68f 2019-07-19        kinaba: 1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,
ba4cf1f68f 2019-07-19        kinaba: 1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,
ba4cf1f68f 2019-07-19        kinaba: 1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,
ba4cf1f68f 2019-07-19        kinaba: 1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,
ba4cf1f68f 2019-07-19        kinaba: 1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,
ba4cf1f68f 2019-07-19        kinaba: 1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,
ba4cf1f68f 2019-07-19        kinaba: 1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,
ba4cf1f68f 2019-07-19        kinaba: 1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,
ba4cf1f68f 2019-07-19        kinaba: 1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,
ba4cf1f68f 2019-07-19        kinaba: 1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,
ba4cf1f68f 2019-07-19        kinaba: 1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,
ba4cf1f68f 2019-07-19        kinaba: 1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,
ba4cf1f68f 2019-07-19        kinaba: 1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,
ba4cf1f68f 2019-07-19        kinaba: 1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,
ba4cf1f68f 2019-07-19        kinaba: 1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,
ba4cf1f68f 2019-07-19        kinaba: 1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,
ba4cf1f68f 2019-07-19        kinaba: 1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,
ba4cf1f68f 2019-07-19        kinaba: 1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,
ba4cf1f68f 2019-07-19        kinaba: 1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,
ba4cf1f68f 2019-07-19        kinaba: 1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,
ba4cf1f68f 2019-07-19        kinaba: 1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,
ba4cf1f68f 2019-07-19        kinaba: 1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,
ba4cf1f68f 2019-07-19        kinaba: 1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,
ba4cf1f68f 2019-07-19        kinaba: 1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,
ba4cf1f68f 2019-07-19        kinaba: 1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,
ba4cf1f68f 2019-07-19        kinaba: 1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,
ba4cf1f68f 2019-07-19        kinaba: 1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,
ba4cf1f68f 2019-07-19        kinaba: 1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,
ba4cf1f68f 2019-07-19        kinaba: 1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,
ba4cf1f68f 2019-07-19        kinaba: 1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,
ba4cf1f68f 2019-07-19        kinaba: 1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,
ba4cf1f68f 2019-07-19        kinaba: 1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,
ba4cf1f68f 2019-07-19        kinaba: 1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,
ba4cf1f68f 2019-07-19        kinaba: 1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,
ba4cf1f68f 2019-07-19        kinaba: 1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,
ba4cf1f68f 2019-07-19        kinaba: 1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,
ba4cf1f68f 2019-07-19        kinaba: 1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,
ba4cf1f68f 2019-07-19        kinaba: 1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,
ba4cf1f68f 2019-07-19        kinaba: 1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,
ba4cf1f68f 2019-07-19        kinaba: 1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,
ba4cf1f68f 2019-07-19        kinaba: 1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,
ba4cf1f68f 2019-07-19        kinaba: 1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,
ba4cf1f68f 2019-07-19        kinaba: 1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,
ba4cf1f68f 2019-07-19        kinaba: 1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,
ba4cf1f68f 2019-07-19        kinaba: 1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,
ba4cf1f68f 2019-07-19        kinaba: 1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,
ba4cf1f68f 2019-07-19        kinaba: 1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,
ba4cf1f68f 2019-07-19        kinaba: 1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,
ba4cf1f68f 2019-07-19        kinaba: 1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,
ba4cf1f68f 2019-07-19        kinaba: 1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,
ba4cf1f68f 2019-07-19        kinaba: 1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,
ba4cf1f68f 2019-07-19        kinaba: 1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,
ba4cf1f68f 2019-07-19        kinaba: 1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,
ba4cf1f68f 2019-07-19        kinaba: 1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,
ba4cf1f68f 2019-07-19        kinaba: 1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,
ba4cf1f68f 2019-07-19        kinaba: 1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,
ba4cf1f68f 2019-07-19        kinaba: 1000,1000,1000,1000,1000,1000,1000,1000,1000,1000 };
ba4cf1f68f 2019-07-19        kinaba: 	  vector <int> a(a_, a_+sizeof(a_)/sizeof(*a_));
ba4cf1f68f 2019-07-19        kinaba: 	int k = 1000;
ba4cf1f68f 2019-07-19        kinaba: 	int _ = -1;
ba4cf1f68f 2019-07-19        kinaba: END
ba4cf1f68f 2019-07-19        kinaba: }
ba4cf1f68f 2019-07-19        kinaba: // END CUT HERE