CodeChef submission 82797 (C++ 4.0.0-8) plaintext list. Status: AC, problem E5, contest . By naughty (Yash), 2009-08-31 18:45:27.
/* Author :: Yash */ #include <vector> #include <list> #include <cassert> #include <sstream> #include <map> #include <set> #include <climits> #include <deque> #include <fstream> #include <stack> #include <bitset> #include <stack> #include <queue> #include <algorithm> #include <functional> #include <numeric> #include <cstring> #include <utility> #include <sstream> #include <iostream> #include <iomanip> #include <cstdio> #include <cmath> #include <cstdlib> #include <ctime> using namespace std; template<class A, class B> A cvt(B x) {stringstream s;s<<x;A r;s>>r;return r;} #define FOR(i,a,b) for(int i= (int )a ; i < (int )b ; ++i) #define REP(i,n) FOR(i,0,n) #define PB push_back #define PP pop() #define EM empty() #define INF 1000000000 #define PF push_front #define ALL(x) x.begin(),x.end() #define SORT(x) sort(ALL(x)) #define V(x) vector< x > #define Debug false #define PRINT(x) cout << #x << " " << x << endl #define LET(x,a) __typeof(a) x(a) #define IFOR(i,a,b) for(LET(i,a);i!=(b);++i) #define EACH(it,v) IFOR(it,v.begin(),v.end()) #define PRESENT(c,x) ((c).find(x) != (c).end()) #define SZ(x) x.size(); #define CPRESENT(c,x) (find(c.begin(),c.end(),x) != (c).end()) #define D(N) int N #define S(N) scanf("%d",&N) typedef pair<int,int> PI; typedef pair<int,PI> TRI; typedef V( int ) VI; typedef V( PI ) VII; typedef V( string ) VS; typedef long long LL; LL C[100][100]; void pre() { REP(i,100) C[i][0] = 1; FOR(i,1,100) FOR(j,1,100) C[i][j] = C[i-1][j] + C[i-1][j-1]; } void Ans(int n,int k) { } int main() { pre(); while ( kases-- ) { int a[m]; bool check = false; REP(i,m) FOR(j,i+1,m) { if ( a[j] < a[i] ) { int cnt = 0; FOR(k,1,a[j]) { REP(l,j) if ( a[l] == k ) ++cnt; } if ( cnt != a[j] - 1 ) { check = true; goto yash; } } } yash:; else { int h = *max_element(a,a+m) , p = 0, q = 0; if ( m == 0 ) h = 0; FOR(i,1,n+1) { bool flag = true; REP(j,m) if ( a[j] == i ) flag = false; if ( flag ) { p += ( i < h ) ; q += ( i > h ) ; } } Ans(p+q,p); } } return 0; }
Comments

