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 fortunato at 2007-11-06 01:03:34
#include<iostream.h>
#define n 6

int a[n+1];

void main()
{
	int m=0;
	int count=0;
	for(int i=1;i<=n;i++)
	{
		cin>>a[i];
		if(a[i]==0)
			m++;
	}

	while(m!=n)
	{
		count=0;
		m=0;
		if(a[6])
		{
			count+=a[6];
		}

		if(a[5])
		{
			count+=a[5];
			if(a[1])
			{
				if(a[1]>11*a[5])
				{
					
					a[1]-=11*a[5];
				}
				else
				{
					a[1]=0;
				}
			}
		}

		if(a[4])
		{
			count+=a[4];
			if(a[2])
			{
				if(a[2]>5*a[4])     				{
					a[2]-=5*a[4];
				}
				else if(a[2]==5*a[4])
				{
					a[2]=0;
				}
				else if(a[2]<5*a[4])  //2*2用完时
				{
					if(a[1])
					{
						if(a[1]>(5*a[4]-a[2])*4)
							a[1]-=(5*a[4]-a[2])*4;
						else
						{
							a[1]=0;
						}
					}
					a[2]=0;
				}
			}
		}

		if(a[3])
		{
			count+=(a[3]/4);
			if(a[3]%4!=0)
			{
				count++;
				if(a[2])
				{
					if(a[2]>2*(4-a[3]%4)-1)     
					{
						a[2]-=(2*(4-a[3]%4)-1);
						if(a[1])
						{			
							if(a[1]>((4-a[3]%4)*9)-(2*(4-a[3]%4)-1)*4)
							{
								a[1]-=((4-a[3]%4)*9-(2*(4-a[3]%4)-1)*4);
							}
							else
							{
								a[1]=0;
							}
						}
					}
					
					else if(a[2]<=2*(4-a[3]%4)-1)
					{
						int t=((4-a[3]%4)*9-(2*(4-a[3]%4)-1)*4);
						a[2]=0;
						if(a[1])
						{
							if(a[1]>t)
							{
								a[1]-=t;
							}
							else
							{
								a[1]=0;
							}
						}
					}
				}
				else if(a[1])
				{
					if(a[1]>(4-a[3]%4)*9)
						a[1]-=(4-a[3]%4)*9;
					else 
					{
						a[1]=0;
					}
				}
			}
		}

		if(a[2])
		{
			count+=a[2]/9;
			if(a[2]%9!=0)
			{
				count++;
				if(a[1])
				{
					if(a[1]>(9-a[2]%9)*4)
					{
						a[1]-=(9-a[2]%9)*4;
					}
					else
					{
						a[1]=0;
					}
				}
			}
		}

		if(a[1])
		{
			count+=a[1]/36;
			if(a[1]%36!=0)
				count++;
		}
		cout<<count<<endl;
		
		for(int i=1;i<=n;i++)
		{
			cin>>a[i];
			if(a[i]==0)
			m++;
		}
	}
}



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