Online Judge | Problem Set | Authors | Online Contests | User | ||||||
---|---|---|---|---|---|---|---|---|---|---|
Web Board Home Page F.A.Qs Statistical Charts | Current Contest Past Contests Scheduled Contests Award Contest |
Re:第一个ac,庆祝一下In Reply To:第一个ac,庆祝一下 Posted by:hongbin_neu at 2012-08-17 13:19:46 > /** > *@author: Bin Hong <hongbin0908@gmail.com> > */ > > > #include <iostream> > #include <deque> > #include <stack> > > //#define __DEBUG__ > > int case_num; > int num; > std::deque<bool> pas; > > std::stack<int> op; > > #ifdef __DEBUG__ > void output() { > std::cout << "["; > for (int i = 0; i < (int)pas.size();i++) { > if (pas[i]) { > std::cout << "(" << " "; > } else { > std::cout << ")" << " "; > } > > } > std::cout << "]" << std::endl; > } > #endif > > void encode() { > for (int i = 0; i < (int)pas.size();i++) { > if (pas[i]) { > op.push(i); > } else { > int left = op.top(); op.pop(); > std::cout << (i - left + 1)/2 << " "; > } > } > > std::cout << std::endl; > } > > > > void cal_per_line(int num) { > pas.clear(); > int last = 0; > int cur = 0; > for (int i = 0; i < num; i++) { > std::cin >> cur; > #ifdef __DEBUG__ > std::cout << cur << " "; > #endif > for (int j = 0; j < cur - last; j++) { > pas.push_back(true); > } > pas.push_back(false); > last = cur; > } > #ifdef __DEBUG__ > std::cout << std::endl; > output(); > #endif > encode(); > > } > > > int main(int argc, char** argv) { > std::cin >> case_num; > #ifdef __DEBUG__ > std::cout << "case_num: " << case_num << std::endl; > #endif > for (int i = 0 ; i < case_num; i++) { > std::cin >> num; > #ifdef __DEBUG__ > std::cout << "num: " << num << std::endl; > #endif > cal_per_line(num); > } > return 0; > } Followed by: Post your reply here: |
All Rights Reserved 2003-2013 Ying Fuchen,Xu Pengcheng,Xie Di
Any problem, Please Contact Administrator