美国数模论文The Big Long River仿真程序

 1 基于贪心算法,我们认为每只船只尽可能到达规定河段的最远营地,依次尾随,有空位则补上。每只船我们作为一个对象,记录类型,露营剩余时间,所在河段,然后依次连接形成一个队列,队列随时间依次拉长,当船只到到达第六个河段且露营天数只剩一天,那么可以从队列拉出。每天第一个河段都有剩余营地数,那么该天出发的船只数等于第一河段剩余营地,船只的分配按照一定的权重。
 2 步骤如下:
 3 当露营地个数为90个时:
 4 当u1=0.2,u2=0.6,u3=0.2;
 5 第一天白天,第一区域有15个营地。
 6 第一天白天出发,出发3个类型1旅游船,9个类型2旅游船,3个类型3旅游船。
 7 第一天晚上扎营3个类型1旅游船,9个类型2旅游船,3个类型3旅游船。
 8 第二天白天,第一区域走了三只类型1旅游船,剩下9只类型2旅游船,3只类型3旅游船,也就是,第一区域剩下3个营地。
 9 第二天白天出发,根据算法将剩下的3个营地根据比例分配,可以根据比例算出应出发3*0.2=0.6只类型1旅游船,3*0.6=1.8只类型2旅游船,3*0.2只类型3旅游船,按船只向上或向下取整,则出发0只类型1旅游船,两只类型2旅游船,一只类型3旅游船。
10 第二天晚上扎营0个类型1旅游船,10个类型2旅游船,4个类型3旅游船。
11 第三天白天,扎了两天晚上的9只类型2旅行船出发,也就是第一区域走了9只类型2旅行船。剩下九个营地。
12 第三天.....
13
14 其他区域以此类推。

River.java

/* River Queue(can be use to contain a lot of boat) */
public class River<E>{
	private java.util.LinkedList<E> list=new java.util.LinkedList<E>();

	public void enter(E e){     //A new boat enter the river
		list.addLast(e);        //begin a trip
	}

	public E out(){             //A boat out the river
		return list.removeFirst(); //end a trip
	}
	public E get(int index){
		return list.get(index);
	}
	public int getsize(){
		return list.size();
	}
	public void remove(int index){
		list.remove(index);
	}
}

  

Boat.java

/* Boat class */
public class Boat {
	public int type=0;
	/* The type of boat,
	 	1 stand for the boat stay one night in every segment
	 	2 stand for the boat stay two night in every segment
	 	3 stand for the boat stay three night in every segment
	 */
	public int segment=0;     //now in which river segment
	public int number=0;      //the number of the same type boat in the same begin day
	public int beginday=0;    //the begin day of the camping
	public int surplusday=0;  //the surplus day of the camping
	public Boat() {
		// TODO Auto-generated constructor stub
	}
	public Boat(int beginday,int type,int number) {
		days(type);          //auto method to give value to another values
		// TODO Auto-generated constructor stub
		this.number=number;
		this.type=type;
	}

	// change the river segment of the boat
	public void changesegment(int segment){
		this.segment=segment;
	}

	// change the river surplus day of the boat
	public void changesurplusday(){
		this.surplusday--;
	}
	// get the river surplus day of the boat
	public int getsurplusday(){
		return this.surplusday;
	}

	// get the segment
	public int getsegment(){
		return this.segment;
	}
	// get the number of the same boat in the same begin day
	public int getboatnumber(){
		return this.number;
	}

	public int getboattype(){
		return this.type;
	}
	public void days(int type){ //auto method
		if(type==1){
			this.surplusday=6;
		}
		else if(type==2){
			this.surplusday=12;
		}
		else{
			this.surplusday=18;
		}
	}
}

  

Time.java

/* Boat change with times */
public class Time {
	public static int day=180;          //trip sum day
	public static int campnumber=15;  //Every segment‘s camp number
	public static int firstcampnumber=15;//surplus camp in the first segment
	public static  double u1=0.2;     //type 1 boat weight
	public static  double u2=0.6;      //type 2 boat weight
	public static  double u3=0.2;       //type 3 boat weight
	public static int overu1=0;         //The sum number of trip of type 1 in 180 days
	public static int overu2=0;			//The sum number of trip of type2 in 180 days
	public static int overu3=0;			//The sum number of trip of type 3 in 180 days
	public static int boatinriver=0;    //the number of boat in the river
	public static Boat temp=new Boat();        //temp variable
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		River<Boat> river=new River<Boat>(); //create a queue of boat
		for(int i=1;i<=day;i++){
			int[][] segemntboat=new int[7][3];
			//every type of boat in every segment,segment7 stand for end the trip
			int type1number=(int) (firstcampnumber*u1);//floor the boat number
			int type2number=(int) (firstcampnumber*u2);
			int type3number=firstcampnumber-type1number-type2number;
			river.enter(new Boat(i,1,type1number));//enter boat
			river.enter(new Boat(i,2,type2number));
			river.enter(new Boat(i,3,type3number));
			boatinriver=river.getsize();           //get the number of boat in the river
			for(int j=0;j<boatinriver;j++){       //one day past
				temp=river.get(j);                 //get the boat
				temp.changesurplusday();           // decrease camping day
				switch(temp.getboattype()){        // change river segment
					case 1:{                       //if the type of boat is type 1
						int k=0;
						switch(temp.getsurplusday()){
							case 6:k=1;           //surplus day is  6,it in segment 1
							break;
							case 5:k=2;           //surplus day is  5,it in segment 2
							break;
							case 4:k=3;
							break;
							case 3:k=4;
							break;
							case 2:k=5;
							break;
							case 1:k=6;
							break;
							case 0:
								k=7;           //boat of end trip
						}
						temp.changesegment(k);
						segemntboat[k-1][0]+=temp.getboatnumber();
					}
					break;
					case 2:{                       //if the type of boat is type2
						int k=0;
						switch(temp.getsurplusday()){
							case 11: ;             //surplus day is  11.12,it in segment 1
							case 12:k=1;
							break;
							case 10: ;             //surplus day is  9.10,it in segment 1
							case 9:k=2;
							break;
							case 8: ;
							case 7:k=3;
							break;
							case 5: ;
							case 6:k=4;
							break;
							case 3: ;
							case 4:k=5;
							break;
							case 1: ;
							case 2:k=6;
							break;
							case 0:
								k=7;           //boat of end trip
						}
						temp.changesegment(k);
						segemntboat[k-1][1]+=temp.getboatnumber();
					}
					break;
					case 3:{				//if the type of boat is type3
						int k=0;
						switch(temp.getsurplusday()){
							case 18: ;		//surplus day is  18. 17.16,it in segment 1
							case 17: ;
							case 16:k=1;
							break;
							case 15: ;              //surplus day is  15.14.13,it in segment 2
							case 14: ;
							case 13:k=2;
							break;
							case 12: ;
							case 11: ;
							case 10:k=3;
							break;
							case 9: ;
							case 8: ;
							case 7:k=4;
							break;
							case 6: ;
							case 5: ;
							case 4:k=5;
							break;
							case 3: ;
							case 2: ;
							case 1:k=6;
							break;
							case 0:
								k=7;                 //boat of end trip
						}
						temp.changesegment(k);
						segemntboat[k-1][2]+=temp.getboatnumber();
					}
				}

			}
			for(int j=0;j<boatinriver;j++){       //some boat leave
				temp=river.get(j);
				if((temp.getsurplusday())==0){
					river.remove(j);               //the boat over
					j--;
					boatinriver=river.getsize();
				}
			}
		overu1+=segemntboat[6][0];        //get the sum number of type 1 in all 180 days;
		overu2+=segemntboat[6][1];
		overu3+=segemntboat[6][2];
		int zone1=segemntboat[0][1]+segemntboat[0][0]+segemntboat[0][2];
		int zone2=segemntboat[1][1]+segemntboat[1][0]+segemntboat[1][2];
		int zone3=segemntboat[2][1]+segemntboat[2][0]+segemntboat[2][2];
		int zone4=segemntboat[3][1]+segemntboat[3][0]+segemntboat[3][2];
		int zone5=segemntboat[4][1]+segemntboat[4][0]+segemntboat[4][2];
		int zone6=segemntboat[5][1]+segemntboat[5][0]+segemntboat[5][2];
		int zone7=segemntboat[6][1]+segemntboat[6][0]+segemntboat[6][2];
		firstcampnumber=campnumber-zone1;   //zone 1 has some empty camp
		/*  boat change */
		//System.out.printf("The %d Day:15,%d,%d,%d,%d,%d,Leave :%d\n",i,         //zone2,zone3,zone4,zone5,zone6,zone7);
		//System.out.println("have empty camp number:"+firstcampnumber);
		//System.out.printf("The %d Day:%d,%d,%d,%d,%d,%d,Leave :%d\n",i+1,          //zone1,zone2,zone3,zone4,zone5,zone6,zone7);
		//System.out.println("Enter boat:"+firstcampnumber);

		System.out.printf("%d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d\n",i,
				segemntboat[0][0],segemntboat[0][1],segemntboat[0][2],
				segemntboat[1][0],segemntboat[1][1],segemntboat[1][2],
				segemntboat[2][0],segemntboat[2][1],segemntboat[2][2],
				segemntboat[3][0],segemntboat[3][1],segemntboat[3][2],
				segemntboat[4][0],segemntboat[4][1],segemntboat[4][2],
				segemntboat[5][0],segemntboat[5][1],segemntboat[5][2],
				segemntboat[6][0],segemntboat[6][1],segemntboat[6][2]
		);
		}
		/* some other input */
		//System.out.printf("Sum leave type 1:%d leave type 2:%d leave type 3:%d\n total boat:%d\n",         // overu1,overu2,overu3,overu1+overu2+overu3);//End of 180 days
		//System.out.printf("The total boat %d",(overu1+overu2+overu3)*2);

		//System.out.printf("%.2f %.2f %.2f %d %d %d %d\n",u1,u2,u3,overu1*2,overu2*2,overu3*2,         //(overu1+overu2+overu3)*2);
		//System.out.printf("%d %d %d %d %d\n",campnumber*6*2,overu1*2,overu2*2,overu3*2,         //(overu1+overu2+overu3)*2);
		overu3=overu2=overu1=0;

	}
}

  

Result:

1 0 9 3 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
2 0 1 5 0 9 0 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0
3 0 5 5 1 10 3 0 0 0 3 0 0 0 0 0 0 0 0 0 0 0
4 0 3 4 1 6 5 1 9 0 0 0 0 3 0 0 0 0 0 0 0 0
5 0 4 4 1 8 8 1 10 0 1 0 0 0 0 0 3 0 0 0 0 0
6 0 4 5 1 7 6 1 6 3 1 9 0 1 0 0 0 0 0 3 0 0
7 0 3 4 1 8 7 1 8 5 1 10 0 1 0 0 1 0 0 0 0 0
8 0 4 5 1 7 6 1 7 8 1 6 0 1 9 0 1 0 0 1 0 0
9 0 3 5 1 7 7 1 8 6 1 8 3 1 10 0 1 0 0 1 0 0
10 0 4 4 1 7 7 1 7 7 1 7 5 1 6 0 1 9 0 1 0 0
11 0 4 4 1 7 7 1 7 6 1 8 8 1 8 0 1 10 0 1 0 0
12 0 4 4 1 8 7 1 7 7 1 7 6 1 7 3 1 6 0 1 9 0
13 0 4 4 1 8 6 1 7 7 1 7 7 1 8 5 1 8 0 1 1 0
14 0 4 4 1 8 6 1 8 7 1 7 6 1 7 8 1 7 0 1 5 0
15 0 4 4 1 8 6 1 8 7 1 7 7 1 7 6 1 8 3 1 3 0
16 0 4 4 1 8 6 1 8 6 1 8 7 1 7 7 1 7 5 1 4 0
17 0 4 4 1 8 6 1 8 6 1 8 7 1 7 6 1 7 8 1 4 0
18 0 4 4 1 8 6 1 8 6 1 8 7 1 8 7 1 7 6 1 3 3
19 0 4 4 1 8 6 1 8 6 1 8 6 1 8 7 1 7 7 1 4 2
20 0 4 4 1 8 6 1 8 6 1 8 6 1 8 7 1 8 6 1 3 3
21 0 4 4 1 8 6 1 8 6 1 8 6 1 8 7 1 8 7 1 4 1
22 0 4 4 1 8 6 1 8 6 1 8 6 1 8 6 1 8 7 1 4 3
23 0 4 4 1 8 6 1 8 6 1 8 6 1 8 6 1 8 7 1 4 2
24 0 4 4 1 8 6 1 8 6 1 8 6 1 8 6 1 8 7 1 4 2
25 0 4 4 1 8 6 1 8 6 1 8 6 1 8 6 1 8 6 1 4 3
26 0 4 4 1 8 6 1 8 6 1 8 6 1 8 6 1 8 6 1 4 2
27 0 4 4 1 8 6 1 8 6 1 8 6 1 8 6 1 8 6 1 4 2
28 0 4 4 1 8 6 1 8 6 1 8 6 1 8 6 1 8 6 1 4 2
29 0 4 4 1 8 6 1 8 6 1 8 6 1 8 6 1 8 6 1 4 2
30 0 4 4 1 8 6 1 8 6 1 8 6 1 8 6 1 8 6 1 4 2
31 0 4 4 1 8 6 1 8 6 1 8 6 1 8 6 1 8 6 1 4 2
32 0 4 4 1 8 6 1 8 6 1 8 6 1 8 6 1 8 6 1 4 2
33 0 4 4 1 8 6 1 8 6 1 8 6 1 8 6 1 8 6 1 4 2
34 0 4 4 1 8 6 1 8 6 1 8 6 1 8 6 1 8 6 1 4 2
35 0 4 4 1 8 6 1 8 6 1 8 6 1 8 6 1 8 6 1 4 2
36 0 4 4 1 8 6 1 8 6 1 8 6 1 8 6 1 8 6 1 4 2
37 0 4 4 1 8 6 1 8 6 1 8 6 1 8 6 1 8 6 1 4 2
38 0 4 4 1 8 6 1 8 6 1 8 6 1 8 6 1 8 6 1 4 2
39 0 4 4 1 8 6 1 8 6 1 8 6 1 8 6 1 8 6 1 4 2
40 0 4 4 1 8 6 1 8 6 1 8 6 1 8 6 1 8 6 1 4 2
41 0 4 4 1 8 6 1 8 6 1 8 6 1 8 6 1 8 6 1 4 2
42 0 4 4 1 8 6 1 8 6 1 8 6 1 8 6 1 8 6 1 4 2
43 0 4 4 1 8 6 1 8 6 1 8 6 1 8 6 1 8 6 1 4 2
44 0 4 4 1 8 6 1 8 6 1 8 6 1 8 6 1 8 6 1 4 2
45 0 4 4 1 8 6 1 8 6 1 8 6 1 8 6 1 8 6 1 4 2
46 0 4 4 1 8 6 1 8 6 1 8 6 1 8 6 1 8 6 1 4 2
47 0 4 4 1 8 6 1 8 6 1 8 6 1 8 6 1 8 6 1 4 2
48 0 4 4 1 8 6 1 8 6 1 8 6 1 8 6 1 8 6 1 4 2
49 0 4 4 1 8 6 1 8 6 1 8 6 1 8 6 1 8 6 1 4 2
50 0 4 4 1 8 6 1 8 6 1 8 6 1 8 6 1 8 6 1 4 2
51 0 4 4 1 8 6 1 8 6 1 8 6 1 8 6 1 8 6 1 4 2
52 0 4 4 1 8 6 1 8 6 1 8 6 1 8 6 1 8 6 1 4 2
53 0 4 4 1 8 6 1 8 6 1 8 6 1 8 6 1 8 6 1 4 2
54 0 4 4 1 8 6 1 8 6 1 8 6 1 8 6 1 8 6 1 4 2
55 0 4 4 1 8 6 1 8 6 1 8 6 1 8 6 1 8 6 1 4 2
56 0 4 4 1 8 6 1 8 6 1 8 6 1 8 6 1 8 6 1 4 2
57 0 4 4 1 8 6 1 8 6 1 8 6 1 8 6 1 8 6 1 4 2
58 0 4 4 1 8 6 1 8 6 1 8 6 1 8 6 1 8 6 1 4 2
59 0 4 4 1 8 6 1 8 6 1 8 6 1 8 6 1 8 6 1 4 2
60 0 4 4 1 8 6 1 8 6 1 8 6 1 8 6 1 8 6 1 4 2
61 0 4 4 1 8 6 1 8 6 1 8 6 1 8 6 1 8 6 1 4 2
62 0 4 4 1 8 6 1 8 6 1 8 6 1 8 6 1 8 6 1 4 2
63 0 4 4 1 8 6 1 8 6 1 8 6 1 8 6 1 8 6 1 4 2
64 0 4 4 1 8 6 1 8 6 1 8 6 1 8 6 1 8 6 1 4 2
65 0 4 4 1 8 6 1 8 6 1 8 6 1 8 6 1 8 6 1 4 2
66 0 4 4 1 8 6 1 8 6 1 8 6 1 8 6 1 8 6 1 4 2
67 0 4 4 1 8 6 1 8 6 1 8 6 1 8 6 1 8 6 1 4 2
68 0 4 4 1 8 6 1 8 6 1 8 6 1 8 6 1 8 6 1 4 2
69 0 4 4 1 8 6 1 8 6 1 8 6 1 8 6 1 8 6 1 4 2
70 0 4 4 1 8 6 1 8 6 1 8 6 1 8 6 1 8 6 1 4 2
71 0 4 4 1 8 6 1 8 6 1 8 6 1 8 6 1 8 6 1 4 2
72 0 4 4 1 8 6 1 8 6 1 8 6 1 8 6 1 8 6 1 4 2
73 0 4 4 1 8 6 1 8 6 1 8 6 1 8 6 1 8 6 1 4 2
74 0 4 4 1 8 6 1 8 6 1 8 6 1 8 6 1 8 6 1 4 2
75 0 4 4 1 8 6 1 8 6 1 8 6 1 8 6 1 8 6 1 4 2
76 0 4 4 1 8 6 1 8 6 1 8 6 1 8 6 1 8 6 1 4 2
77 0 4 4 1 8 6 1 8 6 1 8 6 1 8 6 1 8 6 1 4 2
78 0 4 4 1 8 6 1 8 6 1 8 6 1 8 6 1 8 6 1 4 2
79 0 4 4 1 8 6 1 8 6 1 8 6 1 8 6 1 8 6 1 4 2
80 0 4 4 1 8 6 1 8 6 1 8 6 1 8 6 1 8 6 1 4 2
81 0 4 4 1 8 6 1 8 6 1 8 6 1 8 6 1 8 6 1 4 2
82 0 4 4 1 8 6 1 8 6 1 8 6 1 8 6 1 8 6 1 4 2
83 0 4 4 1 8 6 1 8 6 1 8 6 1 8 6 1 8 6 1 4 2
84 0 4 4 1 8 6 1 8 6 1 8 6 1 8 6 1 8 6 1 4 2
85 0 4 4 1 8 6 1 8 6 1 8 6 1 8 6 1 8 6 1 4 2
86 0 4 4 1 8 6 1 8 6 1 8 6 1 8 6 1 8 6 1 4 2
87 0 4 4 1 8 6 1 8 6 1 8 6 1 8 6 1 8 6 1 4 2
88 0 4 4 1 8 6 1 8 6 1 8 6 1 8 6 1 8 6 1 4 2
89 0 4 4 1 8 6 1 8 6 1 8 6 1 8 6 1 8 6 1 4 2
90 0 4 4 1 8 6 1 8 6 1 8 6 1 8 6 1 8 6 1 4 2
91 0 4 4 1 8 6 1 8 6 1 8 6 1 8 6 1 8 6 1 4 2
92 0 4 4 1 8 6 1 8 6 1 8 6 1 8 6 1 8 6 1 4 2
93 0 4 4 1 8 6 1 8 6 1 8 6 1 8 6 1 8 6 1 4 2
94 0 4 4 1 8 6 1 8 6 1 8 6 1 8 6 1 8 6 1 4 2
95 0 4 4 1 8 6 1 8 6 1 8 6 1 8 6 1 8 6 1 4 2
96 0 4 4 1 8 6 1 8 6 1 8 6 1 8 6 1 8 6 1 4 2
97 0 4 4 1 8 6 1 8 6 1 8 6 1 8 6 1 8 6 1 4 2
98 0 4 4 1 8 6 1 8 6 1 8 6 1 8 6 1 8 6 1 4 2
99 0 4 4 1 8 6 1 8 6 1 8 6 1 8 6 1 8 6 1 4 2
100 0 4 4 1 8 6 1 8 6 1 8 6 1 8 6 1 8 6 1 4 2
101 0 4 4 1 8 6 1 8 6 1 8 6 1 8 6 1 8 6 1 4 2
102 0 4 4 1 8 6 1 8 6 1 8 6 1 8 6 1 8 6 1 4 2
103 0 4 4 1 8 6 1 8 6 1 8 6 1 8 6 1 8 6 1 4 2
104 0 4 4 1 8 6 1 8 6 1 8 6 1 8 6 1 8 6 1 4 2
105 0 4 4 1 8 6 1 8 6 1 8 6 1 8 6 1 8 6 1 4 2
106 0 4 4 1 8 6 1 8 6 1 8 6 1 8 6 1 8 6 1 4 2
107 0 4 4 1 8 6 1 8 6 1 8 6 1 8 6 1 8 6 1 4 2
108 0 4 4 1 8 6 1 8 6 1 8 6 1 8 6 1 8 6 1 4 2
109 0 4 4 1 8 6 1 8 6 1 8 6 1 8 6 1 8 6 1 4 2
110 0 4 4 1 8 6 1 8 6 1 8 6 1 8 6 1 8 6 1 4 2
111 0 4 4 1 8 6 1 8 6 1 8 6 1 8 6 1 8 6 1 4 2
112 0 4 4 1 8 6 1 8 6 1 8 6 1 8 6 1 8 6 1 4 2
113 0 4 4 1 8 6 1 8 6 1 8 6 1 8 6 1 8 6 1 4 2
114 0 4 4 1 8 6 1 8 6 1 8 6 1 8 6 1 8 6 1 4 2
115 0 4 4 1 8 6 1 8 6 1 8 6 1 8 6 1 8 6 1 4 2
116 0 4 4 1 8 6 1 8 6 1 8 6 1 8 6 1 8 6 1 4 2
117 0 4 4 1 8 6 1 8 6 1 8 6 1 8 6 1 8 6 1 4 2
118 0 4 4 1 8 6 1 8 6 1 8 6 1 8 6 1 8 6 1 4 2
119 0 4 4 1 8 6 1 8 6 1 8 6 1 8 6 1 8 6 1 4 2
120 0 4 4 1 8 6 1 8 6 1 8 6 1 8 6 1 8 6 1 4 2
121 0 4 4 1 8 6 1 8 6 1 8 6 1 8 6 1 8 6 1 4 2
122 0 4 4 1 8 6 1 8 6 1 8 6 1 8 6 1 8 6 1 4 2
123 0 4 4 1 8 6 1 8 6 1 8 6 1 8 6 1 8 6 1 4 2
124 0 4 4 1 8 6 1 8 6 1 8 6 1 8 6 1 8 6 1 4 2
125 0 4 4 1 8 6 1 8 6 1 8 6 1 8 6 1 8 6 1 4 2
126 0 4 4 1 8 6 1 8 6 1 8 6 1 8 6 1 8 6 1 4 2
127 0 4 4 1 8 6 1 8 6 1 8 6 1 8 6 1 8 6 1 4 2
128 0 4 4 1 8 6 1 8 6 1 8 6 1 8 6 1 8 6 1 4 2
129 0 4 4 1 8 6 1 8 6 1 8 6 1 8 6 1 8 6 1 4 2
130 0 4 4 1 8 6 1 8 6 1 8 6 1 8 6 1 8 6 1 4 2
131 0 4 4 1 8 6 1 8 6 1 8 6 1 8 6 1 8 6 1 4 2
132 0 4 4 1 8 6 1 8 6 1 8 6 1 8 6 1 8 6 1 4 2
133 0 4 4 1 8 6 1 8 6 1 8 6 1 8 6 1 8 6 1 4 2
134 0 4 4 1 8 6 1 8 6 1 8 6 1 8 6 1 8 6 1 4 2
135 0 4 4 1 8 6 1 8 6 1 8 6 1 8 6 1 8 6 1 4 2
136 0 4 4 1 8 6 1 8 6 1 8 6 1 8 6 1 8 6 1 4 2
137 0 4 4 1 8 6 1 8 6 1 8 6 1 8 6 1 8 6 1 4 2
138 0 4 4 1 8 6 1 8 6 1 8 6 1 8 6 1 8 6 1 4 2
139 0 4 4 1 8 6 1 8 6 1 8 6 1 8 6 1 8 6 1 4 2
140 0 4 4 1 8 6 1 8 6 1 8 6 1 8 6 1 8 6 1 4 2
141 0 4 4 1 8 6 1 8 6 1 8 6 1 8 6 1 8 6 1 4 2
142 0 4 4 1 8 6 1 8 6 1 8 6 1 8 6 1 8 6 1 4 2
143 0 4 4 1 8 6 1 8 6 1 8 6 1 8 6 1 8 6 1 4 2
144 0 4 4 1 8 6 1 8 6 1 8 6 1 8 6 1 8 6 1 4 2
145 0 4 4 1 8 6 1 8 6 1 8 6 1 8 6 1 8 6 1 4 2
146 0 4 4 1 8 6 1 8 6 1 8 6 1 8 6 1 8 6 1 4 2
147 0 4 4 1 8 6 1 8 6 1 8 6 1 8 6 1 8 6 1 4 2
148 0 4 4 1 8 6 1 8 6 1 8 6 1 8 6 1 8 6 1 4 2
149 0 4 4 1 8 6 1 8 6 1 8 6 1 8 6 1 8 6 1 4 2
150 0 4 4 1 8 6 1 8 6 1 8 6 1 8 6 1 8 6 1 4 2
151 0 4 4 1 8 6 1 8 6 1 8 6 1 8 6 1 8 6 1 4 2
152 0 4 4 1 8 6 1 8 6 1 8 6 1 8 6 1 8 6 1 4 2
153 0 4 4 1 8 6 1 8 6 1 8 6 1 8 6 1 8 6 1 4 2
154 0 4 4 1 8 6 1 8 6 1 8 6 1 8 6 1 8 6 1 4 2
155 0 4 4 1 8 6 1 8 6 1 8 6 1 8 6 1 8 6 1 4 2
156 0 4 4 1 8 6 1 8 6 1 8 6 1 8 6 1 8 6 1 4 2
157 0 4 4 1 8 6 1 8 6 1 8 6 1 8 6 1 8 6 1 4 2
158 0 4 4 1 8 6 1 8 6 1 8 6 1 8 6 1 8 6 1 4 2
159 0 4 4 1 8 6 1 8 6 1 8 6 1 8 6 1 8 6 1 4 2
160 0 4 4 1 8 6 1 8 6 1 8 6 1 8 6 1 8 6 1 4 2
161 0 4 4 1 8 6 1 8 6 1 8 6 1 8 6 1 8 6 1 4 2
162 0 4 4 1 8 6 1 8 6 1 8 6 1 8 6 1 8 6 1 4 2
163 0 4 4 1 8 6 1 8 6 1 8 6 1 8 6 1 8 6 1 4 2
164 0 4 4 1 8 6 1 8 6 1 8 6 1 8 6 1 8 6 1 4 2
165 0 4 4 1 8 6 1 8 6 1 8 6 1 8 6 1 8 6 1 4 2
166 0 4 4 1 8 6 1 8 6 1 8 6 1 8 6 1 8 6 1 4 2
167 0 4 4 1 8 6 1 8 6 1 8 6 1 8 6 1 8 6 1 4 2
168 0 4 4 1 8 6 1 8 6 1 8 6 1 8 6 1 8 6 1 4 2
169 0 4 4 1 8 6 1 8 6 1 8 6 1 8 6 1 8 6 1 4 2
170 0 4 4 1 8 6 1 8 6 1 8 6 1 8 6 1 8 6 1 4 2
171 0 4 4 1 8 6 1 8 6 1 8 6 1 8 6 1 8 6 1 4 2
172 0 4 4 1 8 6 1 8 6 1 8 6 1 8 6 1 8 6 1 4 2
173 0 4 4 1 8 6 1 8 6 1 8 6 1 8 6 1 8 6 1 4 2
174 0 4 4 1 8 6 1 8 6 1 8 6 1 8 6 1 8 6 1 4 2
175 0 4 4 1 8 6 1 8 6 1 8 6 1 8 6 1 8 6 1 4 2
176 0 4 4 1 8 6 1 8 6 1 8 6 1 8 6 1 8 6 1 4 2
177 0 4 4 1 8 6 1 8 6 1 8 6 1 8 6 1 8 6 1 4 2
178 0 4 4 1 8 6 1 8 6 1 8 6 1 8 6 1 8 6 1 4 2
179 0 4 4 1 8 6 1 8 6 1 8 6 1 8 6 1 8 6 1 4 2
180 0 4 4 1 8 6 1 8 6 1 8 6 1 8 6 1 8 6 1 4 2

test.java

public class test {

	public static double a=0.5;
	public static double b=0;
	/**
	 * @param args
	 */
	public static void main(String[] args) {
		// TODO Auto-generated method stub
	Time Sensitivity=new Time();
	/* Initial  */
	Sensitivity.campnumber=15;
	Sensitivity.firstcampnumber=15;
	Sensitivity.u1=0.2;
	Sensitivity.u2=0.6;
	Sensitivity.u3=0.2;
	for(int i=1;i<=10;i++){
		/* weight */
		Sensitivity.u1=a;
		Sensitivity.u2=b;
		Sensitivity.u3=1-a-b;
		b=b+0.05;
		//Sensitivity.campnumber=i;
		//Sensitivity.firstcampnumber=i;
		Sensitivity.main(args);

	}
	//Sensitivity.main(args);
	}

}

  

时间: 2024-10-13 02:44:10

美国数模论文The Big Long River仿真程序的相关文章

数模讲座笔记

数模讲座笔记 概述 97%的参赛队是中国人 奖项分为O奖,F奖,M奖(一等奖),H奖(二等奖),S奖(成功参赛奖) 评审 初审:只有两个评委,审阅时间很快,10min左右 初审对所有的队伍进行打分,会刷掉近一半的队伍,刷掉的队伍一般获S奖 终审:分三轮 一二轮:决定前20名进入第三轮,剩下的按排名获M奖,H奖 三轮:直接决定O奖或F奖,评奖很主观,详见PPT 论文技巧 资料搜索时 搜索相关文献,大数据相关题目可用爬虫之类的工具 文献综述 了解问题的背景:连续题?离散题?大数据?网络流?环境相关?

数模三天乐

我们学校有个很不错的历史传统,就是五一三天假会有一个大型的娱乐项目,"数模三天乐",简直把人爽得不行不行的.一般地说是"自愿报名",但是苦逼的数学系出身还有各种各样的原因吧,最终还是不得不报名打一把数模. 数模和ACM是两个完全不同的竞赛.从过程上和准备上讲,数模对于大家来说都是三天决定结果,但是ACM就不是5个小时的发挥决定结果了,毫不夸张地说,数模三天,ACM三年.从结果展现来讲,数模是论文优劣定胜负.可能你的成果或者你的答案和评委们手上的"最佳答案&

珍爱生命,远离数模

话说五天四夜的数学建模终于结束了... 珍爱生命,远离数模!哈哈~~ 其实对本次数模并没有抱太大希望,重在参与重在参与. 在实验室看见一组,两个男生意见不同,感觉很不愉快的样子:还有一组,组员都回去了就剩他一个人在默默地做,熬了两个晚上,论文还得自己写,也是蛮辛苦的了,队友说也不是我弄的,所以我也不懂,不知道咋写,那我就先回去了,好坑呀!其实我们小组一开始也挺不愉快的,三个人对题目的理解都不一样,我都无语了...作为一个team,一定得团结! 然后我发现,他们做事好认真啊,不过好像有点太较真了,

2019数模国赛总结

先说重点:我们组选择的是B题,第一问优化掉空气阻力,并且忘记给出最优决策下的高度(真的是遗憾,我们居然忘了这个),第三问给出思路和总的方程,未给定解的表达.第四问是给定了力,然后给出两种策略来考虑可行性.由于时间没有把握好,论文主体写成了,但是存在一些表述上的瑕疵. ? 如果看了这些话,你还对这篇博客感兴趣,那我们就继续. ? 选题:C→A→B→A→B→A.... ? 晚上题发下来,讨论一会儿,感觉A,B都有坑,就C还比较友好,问题是坑爹的,C没数据(知乎热搜,选C题的都在搜数据hhh...),

初学数模-MATLAB Quick Start! Part II

让我们先从一张图片说起: 这幅画是由德国大画家丢勒(Albrecht Dürer)所画,其中布满了数学符号.在右上方的窗户上,你会发现那是一个矩阵.我们就从这里开始. 那么,在这幅名画中出现的矩阵究竟有何神通呢? 其实,这个矩阵被叫做Magic Square,是因为他的每行每列.主对角线和副对角线数字之和全部相等,且都是(1+16)*2=34. (话说微博网红.艺术科普作家.广告狗顾爷还曾花了很大篇幅在<小顾聊绘画>里介绍丢勒大师,有兴趣的童鞋可以去翻翻,个人感觉挺好看的) 那我们就把它输入到

数模笔记:公平席位的分配问题

数模笔记:公平席位的分配问题 基础 案列 某展会,AB双方根据人数分配席位: 衡量公平的数量指标: p1/n1=p2/n2.此时对AB均公平. p1/n1>p2/n2.此时对A不公平,因为对A放来说,每个席位相对应的人数比率更大. 绝对不公平度 定义: p1/n1-p2/n2 = 对A的绝对不公平度 问题: /*情况1*/ p1=150, n1=10, p1 /n1=15 p2=100, n2=10, p2 /n2=10 /*情况2*/ p1=1050, n1=10, p1 /n1=105 p2

Fib数模n的循环节 ZOJ Problem Set - 3729 Arnold

Fib数模n的循环节 对于一个正整数n,我们求Fib数模n的循环节的长度的方法如下: (1)把n素因子分解,即 (2)分别计算Fib数模每个的循环节长度,假设长度分别是 (3)那么Fib模n的循环节长度 从上面三个步骤看来,貌似最困难的是第二步,那么我们如何求Fib模的循环节长度呢? 这里有一个优美的定理:Fib数模的最小循环节长度等于,其中表示Fib数模素数的最小循环节长度.可以看出我们现在最重要的就是求 对于求我们利用如下定理: 如果5是模的二次剩余,那么循环节的的长度是的因子,否则,循环节

数模常用算法系列--整数线性规划(分枝定界法)、整数非线性规划(蒙特卡洛法)

整数线性规划求解----分枝定界法 什么是整数规划? ? 线性规划中的变量(部分或全部)限制为整数时,称为整数规划.若在线性规划模型中,变量限制为整数,则称为整数线性规划.目前所流行的求解整数规划的方法,往往只适用于整数线性规划.目前还没有一种方法能有效地求解一切整数规划. 整数规划的分类 - 变量全限制为整数时,称(完全)整数规划 - 变量部分限制为整数时,称混合整数规划 什么是分枝定界法 ? 原理如下: ? 设有最大化的整数规划问题A,与它相应的线性规划为问题B,从解问题B开始,若其最优解不

数模手记 之 MATLAB-入门手记(施工中...)

MATLAB初用起来感觉就是面向矩阵加强版命令行程序,附加高级运算及2D/3D绘图....恩,是的,我就是这样想的= = 博主是个数学系的本科生,也要开始准备暑期的MCM了,虽然本科阶段会开数学软件的课,不过听说比较鸡肋,而且时间比较靠后,所以写一篇手记记录一下自学期间体会比较深刻或感觉比较实用的地方,权当分享和笔记,见笑,哈哈哈. 话说博主为了权衡MCM和ICPC两大竞赛也是费了不少功夫上知乎...... 后来只是觉得想做的事情还是得做啊,数学建模或许会改变我对数学一贯的看法,问了那么多人可能