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

不看题解确实太难了,附代码

Posted by 278466061 at 2015-04-13 00:40:32 on Problem 1148
Source Code

Problem: 1148		User: 278466061
Memory: 460K		Time: 719MS
Language: C++		Result: Accepted
Source Code
#include <iostream>
#include <string>
#include <math.h>
#include <vector>
#include <fstream>
#include <algorithm>
#include <cstring>
using namespace std;

#define MAX 10000
int N;
int codes[2*MAX+10];
int signs[2][MAX+10];
int ans[2][MAX+10];

bool Foo(int s, int first)
{
	int i, j, n;
	i = j = s;
	if(codes[first*N+s]*signs[first][0] < 0)
		return false;
	ans[first][0] = codes[first*N+s];
	for(n = 1; n < N; ++n)
	{
		if(codes[first*N+j]*signs[first][n] > 0)
		{
			--i;
			if(i < 0)
				return false;
			ans[first][n] = codes[first*N+i];
		}
		else
		{
			++j;
			if(j >= N)
				return false;
			ans[first][n] = codes[first*N+j];
		}
	}
	return true;
}

int main()
{
	//ifstream cin("test.txt");
	int i, j, n;
	cin >> N;
	for(n = 0; n < 2*N; ++n)
		cin >> codes[n];
	for(n = 0; n < N; ++n)
	{
		cin >> i;
		signs[0][n] = 2*(i==1||i==4)-1;
		signs[1][n] = 2*(i<=2)-1;
	}
	sort(codes, codes+2*N);
	j = signs[0][N-1];
	for(n = N-1; n >= 0; --n, j*=-1)
		codes[n] *= j;
	j = signs[1][N-1];
	for(n = 2*N-1; n >= N; --n, j*=-1)
		codes[n] *= j;
	bool done[2];
	done[0] = done[1] = false;
	int left1 = 0; int left2 = 0;
	for(i = 0; i < N-1; ++i)
	{
		if(signs[0][i]==signs[0][i+1])
			++left1;
		if(signs[1][i]==signs[1][i+1])
			++left2;
	}
	done[0] = Foo(left1, 0);
	done[1] = Foo(left2, 1);
	if(!done[0] || !done[1])
		cout << 0 << endl;
	else
	{
		for(i = 0; i < N; ++i)
		{
			if(ans[0][i] > 0)
				cout << "+";
			cout << ans[0][i] << " ";
			if(ans[1][i] > 0)
				cout << "+";
			cout << ans[1][i] << endl;
		}
	}
	return 0;
}

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