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 devilphoenix at 2006-06-06 14:14:17 on Problem 1015
In Reply To:思路是抄的,这题有什么bt数据吗? Posted by:devilphoenix at 2006-06-06 14:07:06
for (j=m;j>=0;--j)改成了for (j=m-1;j>=0;--j)……
 
为啥过了。。。

> 用了好多随机数据,结果和ac的程序比过了,都没问题。。
> 
> #include <iostream>
> using namespace std;
> #define MID 401
> 
> struct xy_pair{
> 	int x;
> 	int y;
> };
> 
> 
> 
> xy_pair seq[201];
> 
> int opt[24][810][24]={0};
> 
> int main()
> {
> 	int i,j,k,l,tmp,p;
> 	int max=MID,min=MID;
> 	int nmax=MID,nmin=MID;
> 	int tmp_x,tmp_y;
> 	int m,n;
> 	for(l=1;;++l){
> 		opt[0][MID][23]=l;
> 		opt[0][MID][22]=0;
> 		cin>>n>>m;
> 		if (0==n) break;
> 		max=MID;
> 		min=MID;
> 		nmax=MID;
> 		nmin=MID;
> 		for(i=0;i<n;++i){
> 			cin>>tmp_x>>tmp_y;
> 			seq[i].x=tmp_x-tmp_y;
> 			seq[i].y=tmp_x+tmp_y;
> 			for (j=m;j>=0;--j) {
> 				for (k=min;k<=max;++k) {
> 					if (l==opt[j][k][23]) {
> 						tmp=k+seq[i].x;
> 						if ((opt[j][k][22]+seq[i].y)>opt[j+1][tmp][22] 
> 							|| opt[j+1][tmp][23]!=l){
> 							opt[j+1][tmp][23]=l;
> 							opt[j+1][tmp][22]=opt[j][k][22]+seq[i].y;
> 							if (tmp<nmin) nmin=tmp;
> 							if (tmp>nmax) nmax=tmp;
> 							for (p=0;p<j;p++) {
> 								opt[j+1][tmp][p]=opt[j][k][p];
> 							}
> 							opt[j+1][tmp][j]=i+1;
> 						}
> 					}
> 				}
> 			}
> 			max=nmax;
> 			min=nmin;
> 		}
> 		for (i=0;i<MID;++i) {
> 			if (opt[m][MID+i][23]==l && opt[m][MID-i][23]==l) {
> 				if (opt[m][MID+i][22]>=opt[m][MID-i][22]) {
> 					cout<<"Jury #"<<l<<endl<<"Best jury has value "<<(opt[m][MID+i][22]+i)/2
> 					<<" for prosecution and value "<<(opt[m][MID+i][22]-i)/2<<" for defence:\n";
> 					for (j=0;j<m;++j) {
> 						cout << ' ' <<opt[m][MID+i][j];
> 					}
> 					cout<<endl<<endl;
> 				}
> 				else if(opt[m][MID+i][22]<opt[m][MID-i][22]){
> 					cout<<"Jury #"<<l<<endl<<"Best jury has value "<<(opt[m][MID-i][22]-i)/2
> 					<<" for prosecution and value "<<(opt[m][MID-i][22]+i)/2<<" for defence:\n";
> 					for (j=0;j<m;++j) {
> 						cout << ' ' <<opt[m][MID-i][j];
> 					}
> 					cout<<endl<<endl;
> 				}
> 				break;
> 			}
> 			else if (opt[m][MID+i][23]==l) {
> 				cout<<"Jury #"<<l<<endl<<"Best jury has value "<<(opt[m][MID+i][22]+i)/2
> 				<<" for prosecution and value "<<(opt[m][MID+i][22]-i)/2<<" for defence:\n";
> 				for (j=0;j<m;++j) {
> 					cout << ' ' <<opt[m][MID+i][j];
> 				}
> 				cout<<endl<<endl;
> 				break;
> 			}
> 			else if (opt[m][MID-i][23]==l) {
> 				cout<<"Jury #"<<l<<endl<<"Best jury has value "<<(opt[m][MID-i][22]-i)/2
> 				<<" for prosecution and value "<<(opt[m][MID-i][22]+i)/2<<" for defence:\n";
> 				for (j=0;j<m;++j) {
> 					cout << ' ' <<opt[m][MID-i][j];
> 				}
> 				cout<<endl<<endl;
> 				break;
> 
> 			}
> /*			if (opt[m][MID+i][23]==l) {
> 				if ((opt[m][MID+i][22]>=opt[m][MID-i][22] && opt[m][MID-i][23]==l)
> 					|| opt[m][MID-i][23]!=l) {
> 					cout<<"Jury #"<<l<<endl<<"Best jury has value "<<(opt[m][MID+i][22]+i)/2
> 					<<" for prosecution and value "<<(opt[m][MID+i][22]-i)/2<<" for defence:\n";
> 					for (j=0;j<m;++j) {
> 						cout << ' ' <<opt[m][MID+i][j];
> 					}
> 					cout<<endl<<endl;
> 				}
> 				else if(opt[m][MID+i][22]<opt[m][MID-i][22] && opt[m][MID-i][23]==l){
> 					cout<<"Jury #"<<l<<endl<<"Best jury has value "<<(opt[m][MID-i][22]-i)/2
> 					<<" for prosecution and value "<<(opt[m][MID-i][22]+i)/2<<" for defence:\n";
> 					for (j=0;j<m;++j) {
> 						cout << ' ' <<opt[m][MID-i][j];
> 					}
> 					cout<<endl<<endl;
> 				}
> 				break;
> 			}
> 			else if (opt[m][MID-i][23]==l) {
> 				cout<<"Jury #"<<l<<endl<<"Best jury has value "<<(opt[m][MID-i][22]-i)/2
> 				<<" for prosecution and value "<<(opt[m][MID-i][22]+i)/2<<" for defence:\n";
> 				for (j=0;j<m;++j) {
> 					cout << ' ' <<opt[m][MID-i][j];
> 				}
> 				cout<<endl<<endl;
> 				break;
> 			}*/
> 		}
> 	}
> 	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