Online JudgeProblem SetAuthorsOnline ContestsUser
Web Board
Home Page
F.A.Qs
Statistical Charts
Problems
Submit Problem
Online Status
Prob.ID:
Register
Update your info
Authors ranklist
Current Contest
Past Contests
Scheduled Contests
Award Contest
User ID:
Password:
  Register

Re:用STL死活TLE, 一生气,老子直接打表过。

Posted by TurnAround at 2010-07-10 10:13:06 on Problem 1426
In Reply To:用STL死活TLE, 一生气,老子直接打表过。 Posted by:TurnAround at 2010-07-10 09:53:03
> #include <cstdio>
> #include <string>
> //#include <queue>
> using namespace std;
> /*
> struct Node {
> 	Node(string _v, int _r):value(_v), rest(_r){}
> 	string value;
> 	unsigned char rest;
> };
> */
> int n;
> string m[202];
> string result;
> void mySplit()
> {
> 	string::size_type pre_pos = 0;
> 	string::size_type cur_pos = 0;
> 	int id = 1;
> 	while ((pre_pos!=string::npos) && ((cur_pos=result.find("$$", pre_pos))!=string::npos)) {
> 		m[id] = result.substr(pre_pos, cur_pos-pre_pos);
> 		pre_pos = cur_pos+2;
> 		id++;
> 	}
> }
> 
> int main()
> {
> 	result = "1$$10$$111$$100$$10$$1110$$1001$$1000$$111111111$$10$$11$$11100$$1001$$10010$$1110$$10000$$11101$$1111111110$$11001$$100$$10101$$110$$110101$$111000$$100$$10010$$1111111101$$100100$$1101101$$1110$$111011$$100000$$111111$$111010$$10010$$11111111100$$111$$110010$$10101$$1000$$11111$$101010$$1101101$$1100$$1111111110$$1101010$$10011$$1110000$$1100001$$100$$100011$$100100$$100011$$11111111010$$110$$1001000$$11001$$11011010$$11011111$$11100$$100101$$1110110$$1111011111$$1000000$$10010$$1111110$$1101011$$1110100$$11111001$$10010$$10011$$111111111000$$10001$$1110$$11100$$1100100$$1001$$101010$$11101001$$10000$$1111111101$$111110$$101011$$1010100$$111010$$11011010$$11010111$$11000$$11010101$$1111111110$$1001$$11010100$$10000011$$100110$$110010$$11100000$$11100001$$11000010$$111111111111111111$$100$$101$$1000110$$11100001$$1001000$$101010$$1000110$$110100111$$111111110100$$1111111011$$110$$111$$10010000$$1011011$$110010$$1101010$$110110100$$11111110101$$110111110$$110001101$$111000$$11011$$1001010$$10011100011$$11101100$$1000$$11110111110$$11010011$$10000000$$100100001$$10010$$101001$$11111100$$11101111$$11010110$$11111111010$$11101000$$10001$$111110010$$110110101$$100100$$10011$$100110$$1001$$1111111110000$$11011010$$100010$$1100001$$11100$$110111$$11100$$1110001$$11001000$$11111011011$$10010$$1110110$$1010100$$10101101011$$111010010$$100011$$100000$$11101111$$11111111010$$1010111$$1111100$$1111110$$1010110$$11111011$$10101000$$10111101$$111010$$1111011111$$110110100$$1111111011$$110101110$$100100$$110000$$101110011$$110101010$$11010111$$11111111100$$1001111$$10010$$100101$$110101000$$1110$$100000110$$1001011$$1001100$$1111111100001$$110010$$11101111$$111000000$$11001$$111000010$$101010$$110000100$$1101000101$$1111111111111111110$$111000011$$1000$$";
> 	mySplit();
> 	while (scanf("%d", &n)) {
> 		if (n == 0) {
> 			break;
> 		}
> 		printf("%s\n", m[n].c_str());
> 	}
> 
> 	return 0;
> 			
> 	/*
> 	m[1] = "1";	
> 	for (int i=2; i<=200; i++) {
> 		n = i;
> 		queue<Node> q;
> 		Node first("1", 1);
> 		q.push(first);
> 
> 		while (!q.empty()) {
> 			Node cur = q.front();
> 			q.pop();
> 			if ((cur.rest*10+1) % n == 0) {
> 				m[n] = cur.value+"1";	
> 				break;
> 			} else {
> 				q.push(Node(cur.value+"1", (cur.rest*10+1)%n));
> 			}
> 			
> 			if ((cur.rest*10) % n == 0) {
> 				m[n] = cur.value+"0";	
> 				break;
> 			} else {
> 				q.push(Node(cur.value+"0", (cur.rest*10)%n));
> 			}
> 		}
> 	}
> 	*/
> }

Followed by:

Post your reply here:
User ID:
Password:
Title:

Content:

Home Page   Go Back  To top


All Rights Reserved 2003-2013 Ying Fuchen,Xu Pengcheng,Xie Di
Any problem, Please Contact Administrator