Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
1.
a) Create a Java class called Student with the following details as variables within it.
(i) USN
(ii) Name
(iii) Branch
(iv) Phone
Write a Java program to create n Student objects and print the USN, Name,
Branch, and Phone of these objects with suitable headings :-
import java.util.Scanner;
class Student
{
String usn,name,branch,phone;
void read()
{
Scanner input=new Scanner(System.in);
System.out.println("Enter the USN,Name,Branch,Phone");
usn=input.next();
name=input.next();
branch=input.next();
phone=input.next();
}
void display()
{
System.out.println(usn+"\t"+name+"\t"+branch+"\t"+phone);
}
}
public class Pgm1a
{
public static void main(String[] args)
{
int n;
Scanner input=new Scanner(System.in);
System.out.println("Enter the number of students:-");
n=input.nextInt();
Student [] s=new Student[n];
for(int i=0;i<=n-1;i++)
{
s[i]=new Student();
s[i].read();
}
for(int i=0;i<=n-1;i++)
{
s[i].display();
}
}
}
-:OUTPUT:-
b) Write a Java program to implement the Stack using arrays. Write Push(), Pop(),
and Display() methods to demonstrate its working :-
import java.util.*;
class Pgm1b
{
public static int top=-1;
public static int size=4;
public static int s[]=new int [size];
public static void main(String[] args)
{
int choice;
Scanner input=new Scanner(System.in);
while(true)
{
System.out.println("\n 1.PUSH\n 2.POP\n 3.DISPLAY\n4.EXIT");
System.out.println("Enter your choice:-");
choice=input.nextInt();
switch(choice)
{
case 1:push();
break;
case 2:pop();
break;
case 3:display();
break;
default:System.exit(0);
}
}
}
public static void push()
{
int elem;
if(top==size-1)
{
System.out.println("Stack is Overflow, Stack is full");
}
else
{
Scanner input=new Scanner(System.in);
System.out.print("Enter an element tobe pushed:- ");
elem=input.nextInt();
top=top+1;
s[top]=elem;
}
}
public static void pop()
{
if(top==-1)
{
System.out.println("Stack is Underflow, Stack is empty");
}
else
{
System.out.print("Deleted element is:- "+ s[top]);
top=top-1;
}
}
public static void display()
{
int i;
if(top==-1)
{
System.out.println("Display is not possible");
}
else
{
System.out.print("Stack elements are:- ");
for(i=0;i<=top;i++)
{
System.out.print(+s[i] + "\t");
}
}
}
}
-:OUTPUT:-
1.PUSH
2.POP
3.DISPLAY
4.EXIT
Enter your choice:-
1
Enter an element tobe pushed:- 10
1.PUSH
2.POP
3.DISPLAY
4.EXIT
Enter your choice:-
1
Enter an element tobe pushed:- 20
1.PUSH
2.POP
3.DISPLAY
4.EXIT
Enter your choice:-
1
Enter an element tobe pushed:- 30
1.PUSH
2.POP
3.DISPLAY
4.EXIT
Enter your choice:-
1
Enter an element tobe pushed:- 40
1.PUSH
2.POP
3.DISPLAY
4.EXIT
Enter your choice:-
1
Stack is Overflow, Stack is full
1.PUSH
2.POP
3.DISPLAY
4.EXIT
Enter your choice:-
1
Stack is Overflow, Stack is full
1.PUSH
2.POP
3.DISPLAY
4.EXIT
Enter your choice:-
3
Stack elements are:-10 20 30 40
1.PUSH
2.POP
3.DISPLAY
4.EXIT
Enter your choice:-
2
Deleted element is:- 40
1.PUSH
2.POP
3.DISPLAY
4.EXIT
Enter your choice:-
2
Deleted element is:- 30
1.PUSH
2.POP
3.DISPLAY
4.EXIT
Enter your choice:-
2
Deleted element is:- 20
1.PUSH
2.POP
3.DISPLAY
4.EXIT
Enter your choice:-
2
Deleted element is:- 10
1.PUSH
2.POP
3.DISPLAY
4.EXIT
Enter your choice:-
2
Stack is Underflow, Stack is empty
1.PUSH
2.POP
3.DISPLAY
4.EXIT
Enter your choice:-
3
Display is not possible
1.PUSH
2.POP
3.DISPLAY
4.EXIT
Enter your choice:-
4
2.
a) Design a super class called Staff with details as Staff Id, Name, Phone, Salary.
Extend this class by writing three subclasses namely Teaching (domain,
publications), Technical(skills), and Contract(period). Write a Java program to
read and display at least 3 staff objects of all three categories :-
import java.util.*;
class Staff
{
int staffid;
float salary;
String name;
long phone;
Staff(int staffid,String name, long phone,float salary )
{
this.staffid=staffid;
this.salary=salary;
this.name=name;
this.phone=phone;
}
void display()
{
System.out.println("Staff ID:"+this.staffid);
System.out.println("Name:"+this.name);
System.out.println("Phone:"+this.phone);
System.out.println("Salary:"+this.salary);
}
}
class Teaching extends Staff
{
String domain, publication;
Teaching(int staffid,String name,long phone,float salary,String dom,String
pub)
{
super(staffid,name,phone,salary);
domain=dom;
publication=pub;
}
void displayTeach()
{
System.out.println("Domain:"+domain);
System.out.println("Publication:"+publication);
System.out.println("-----------------------------");
}
}
class Technical extends Staff
{
String skills;
Technical(int staffid,String name,long phone,float salary,String skill)
{
super(staffid,name,phone,salary);
skills=skill;
}
void displayTechnical()
{
System.out.println("Skils:- "+skills);
System.out.println("-----------------------------");
}
}
}
break;
case 2: System.out.println("Enter the number of
technical staff minimum 3:-");
n=sobj.nextInt();
Technical[] tech=new Technical[n];
for(int i=0;i<tech.length;i++)
{
System.out.println("Enter staffid, Name, Phone, salary , and
Skills");
staffid=sobj.nextInt();
name=sobj.next();
phone=sobj.nextLong();
salary=sobj.nextFloat();
skill=sobj.next();
tech[i]=new Technical(staffid,name,phone,salary,skill);
}
for(int i=0;i<tech.length;i++)
{
tech[i].display();
tech[i].displayTechnical();
}
break;
case 3: System.out.println(" Enter the number of contract staff
minimum 3:-");
n=sobj.nextInt();
Contract[] con=new Contract[n];for(int i=0;i<con.length;i++)
{
System.out.println("Enter staffid, Name, Phone, salary ,and
period");
staffid=sobj.nextInt();
name=sobj.next();
phone=sobj.nextLong();
salary=sobj.nextFloat();
period=sobj.nextInt();
con[i]=new Contract(staffid,name,phone,salary,period);
}
for(int i=0;i<con.length;i++)
{
con[i].display();
con[i].displayCont();
}
break;
default: System.out.println("Invalid option");
}
}
while(choice!=4);
}
}
-:OUTPUT:-
Staff ID:222
Name:preethi
Phone:9988664422
Salary:25000.0
Domain:se
Publication:swapna
-------------------------------------------------------------------------------------------------------
Period:- 2
-----------------------------
Staff ID:786
Name:Shwetha
Phone:9383735373
Salary:26000.0
Period:- 1
-----------------------------
Staff ID:246
Name:Sunil
Phone:7845126589
Salary:55000.0
Period:- 4
-------------------------------------------------------------------------------------------------------
b) Write a Java class called Customer to store their name and date_of_birth.
The date_of_birth format should be dd/mm/yyyy. Write methods to read
customer data as < name, dd/mm/yyyy> and display as < name, dd, mm, yyyy>
using String To kenizer class considering the delimiter character as “/” :-
import java.util.Scanner;
import java.util.StringTokenizer;
class Customer
{
String cname,dob;
Scanner sobj=new Scanner(System.in);
void read()
{
System.out.println("Enter Customer name:");
cname=sobj.next();
System.out.println("Enter Customer DOB in the format dd/mm/yyyy");
dob=sobj.next();
}
void display()
{
StringTokenizer st = new StringTokenizer(dob, "/");
System.out.println(cname);
while (st.hasMoreTokens())
{
String s = st.nextToken();
System.out.print(s+"-");
}
}
}
public class Pgm2b
{
public static void main(String[] args)
{
Customer cobj=new Customer();
cobj.read();
System.out.println("Customer Details.................");
cobj.display();
}
}
-:OUTPUT:-
3.
a) Write a Java program to read two integers a and b. Compute a/band print,
when b is not zero. Raise an exception when b is equal to zero :-
import java.util.*;
public class Pgm3a
{
public static void main(String[] args)
{
int a,b;
float c;
try
{
Scanner input=new Scanner(System.in);
System.out.print("Enter the value of a :-");
a=input.nextInt();
System.out.print("Enter the value of b :-");
b=input.nextInt();
c=a/b;
System.out.println("Result = "+c);
}
catch(ArithmeticException e)
{
System.out.println("Divide by zero error");
}
}
}
-:OUTPUT:-
-------------------------------------------------------------------------------------------------------
b) Write a Java program that implements a multi-thread application that has three
threads. First thread generates a random integer for every 1 second; second
thread computes the square of the number and prints; third thread will print
the value of cube of the number :-
import java.util.*;
public class Pgm3b
{
static int randomInteger;
public static void main(String args[])
{
System.out.println("For 10 random numbers :-");
mythread thread=new mythread();
thread.start();
}
}
class mythread extends Thread
{
public void run()
{
int i=0;
try
{
while(i<10)
{
Random rand=new Random();
Pgm3b.randomInteger=rand.nextInt(100);
System.out.println("Random integer is :- " + Pgm3b.randomInteger);
new mythread2().start();
new mythread3().start();
Thread.sleep(1000*1);
System.out.println();
}
}
catch(InterruptedException exception)
{
exception.printStackTrace();
}
}
}
class mythread2 extends Thread
{
public void run()
{
System.out.println("Square of " +Pgm3b.randomInteger + " is "
+ Pgm3b.randomInteger * Pgm3b.randomInteger);
}
}
class mythread3 extends Thread
{
public void run()
{
System.out.println("Cube of " +Pgm3b.randomInteger + " is "
+ Pgm3b.randomInteger * Pgm3b.randomInteger);
}
}
-:OUTPUT:-
Random integer is :- 15
Square of 15 is 225
Cube of 15 is 225
Random integer is :- 65
Square of 65 is 4225
Cube of 65 is 4225
Random integer is :- 89
Square of 89 is 7921
Cube of 89 is 7921
Random integer is :- 62
Square of 62 is 3844
Cube of 62 is 3844
Random integer is :- 25
Square of 25 is 625
Cube of 25 is 625
Random integer is :- 59
Square of 59 is 3481
Cube of 59 is 3481
Random integer is :- 31
Square of 31 is 961
Cube of 31 is 961
Random integer is :- 75
Square of 75 is 5625
Cube of 75 is 5625
Random integer is :- 26
Square of 26 is 676
Cube of 26 is 676
Random integer is :- 34
Square of 34 is 1156
Cube of 34 is 1156
Random integer is :- 73
Square of 73 is 5329
Cube of 73 is 5329
Random integer is :- 29
Square of 29 is 841
Cube of 29 is 841
Random integer is :- 9
Square of 9 is 81
Cube of 9 is 81
Random integer is :- 52
Square of 52 is 2704
Cube of 52 is 2704
Random integer is :- 95
Square of 95 is 9025
Cube of 95 is 9025
Random integer is :- 56
Square of 56 is 3136
Cube of 56 is 3136
Random integer is :- 82
Square of 82 is 6724
Cube of 82 is 6724
import java.util.Random;
import java.util.Scanner;
import java.util.*;
public class Pgm4
{
public static void main(String args[])
{
int i,n,min=0,max=6000000;
int a[];
Scanner input=new Scanner(System.in);
System.out.println("Enter the no. of elements :- ");
n=input.nextInt();
a=new int [n];
Random rand=new Random();
for(i=0;i<=n-1;i++)
{
int number=rand.nextInt((max-min)+1)+min;
a[i]=number;
}
System.out.println("Enter the Elements are :- ");
for(i=0;i<=n-1;i++)
{
System.out.print(a[i] +"\t");
}
long start=System.currentTimeMillis();
for(long k=1;k<1000;k++)
quicksort(a,0,n-1);
long end=System.currentTimeMillis();
float time=(end-start);
System.out.println();
System.out.println("The sorted array is shown below :- ");
for(i=0;i<=n-1;i++)
{
System.out.print(a[i]+"\t");
}
System.out.println();
System.out.println("Time = " +time);
}
public static void quicksort(int a[],int low,int high)
{
int j;
if(low<high)
{
j=partition(a,low,high);
quicksort(a,low,j-1);
quicksort(a,j+1,high);
}
}
public static int partition(int a[],int low,int high)
{
int i,j;
boolean b;
int key,temp;
b=true;
key=a[low];
i=low+1;
j=high;
while(b)
{
while(i<high && a[i]<key)
i++;
while(a[j]>key)
j--;
if(i<j)
{
temp=a[i];
a[i]=a[j];
a[j]=temp;
}
else
{
temp=a[low];
a[low]=a[j];
a[j]=temp;
return j;
}
}
return 0;
}
}
-:OUTPUT:-
Time = 25516.0
import java.util.Random;
import java.util.Scanner;
public class Pgm5
{
public static void main(String args[])
{
int i;
int n;
int a[];
int min=0,max=6000;
Scanner input=new Scanner(System.in);
System.out.println("Enter the no. of elements :-");
n=input.nextInt();
a=new int[n];
Random random=new Random();
for(i=0;i<=n-1;i++)
{
int number=random.nextInt((max-min)+1)+min;
a[i]=number;
}
System.out.println("Enter the elements :-");
for(i=0;i<=n-1;i++)
{
System.out.print(a[i]+"\t");
}
System.out.println();
long start=System.currentTimeMillis();
mergesort(a,0,n-1);
long end=System.currentTimeMillis();
float time=(end-start);
System.out.println();
System.out.print("The sorted array is :-");
System.out.println();
for(i=0;i<=n-1;i++)
{
System.out.print(a[i]+"\t");
}
System.out.println();
System.out.print("Time = "+time);
}
public static void mergesort(int a[], int low, int high)
{
int mid;
if(low<high)
{
mid=(low+high)/2;
mergesort(a,low,mid);
mergesort(a,mid+1,high);
merge(a,low,mid,high);
}
}
public static void merge(int a[], int low,int mid, int high)
{
int c[]=new int[200000];
int i=low;
int j=mid+1;
int k=low;
while(i<=mid &&j<=high)
{
if(a[i]<a[j])
{
c[k++]=a[i++];
}
else
{
c[k++]=a[j++];
}
}
while(i<=mid)
{
c[k++]=a[i++];
}
while(j<=high)
{
c[k++]=a[j++];
}
for(i=low;i<=high;i++)
{
a[i]=c[i];
}
}
}
-:OUTPUT:-
1321 3767 2068 271 2464 1247 2199 2682 2925 2201 5470
4632 5676 4349 5232 1707 513 3671 1935 2148 2480 1290
1446 3711 2427 849 901 3674 1532 5173 5720 5903 1355
911 2021 2007 1832 2352 4583 1741 5637 5047 4857 5174
5947 3472 2290 5040 3206 4389 3307 4962 3206 4464 203
1903 516 5053 2078 1775 2868 2553 2709 1058 2677 3937
3137 5427 5239 5143 3329 5387 5897 3312 55 4118 2910
3245 1471 356 5001 4851 4146 985 989 2130 4829
5400 1139 1738 3338 1390 1931 4263 5573 2046 4032 5363
5443 1813 1853 5630 3971 4943 633 4092 1258 3020 1442
1617 1155 4922 3576 2582 4372 3517 1127 1321 5357 2285
2792 4994 5444 223 2880 1497 1540 2001 4747 5574 5146
2234 1908 911 2588 1699 96 1744 4586 1145 1137 2019
1467 2348 5776 1031 5301 2712 3505 4092 2975 258 219
3121 4529 3886 4834 4184 5801 815 615 1184 5161
4216 4727 5376 4453 2103 3998 1518 1054 213 2241
5875 3508 453 5599 766 2699 2412 4286 2020 1375 5877
4569 4600 4471 2918 2003 4808 2682 2633 11 2484 2314
5542 1845 4157 4545 1987 2885 3193 5779 995 4930 1093
1837 5580 4533 5264 2647 2468 648 2521 3038 1250 485
3089 724 4447 3324 3471 2283 3579 5460 432 5626 3677
2285 4891 5833 4813 381 1964 4464 2807 2828 5586 5350
196 5504 3633 476 2537 272 5802 4151 5459 1271 2771
1265 3684 1832 5002 46 5893 4605 1076 2002 5694 2363
2729 1223 3794 4868 2149 4627 2093 2151 4141 2280 5520
4764 894 3540 5487 2068 1628 1627 5547 769 5918 4572
2879 1317 4741 198 4233 3406 4205 5705 1609 4059 3449
5883 4573 3623 3181 1762 530 3974 1571 2168 999 2976
3672 4506 2631 211 3701 3530 5956 1723 1412 1550 1913
4117 4523 3860 5012 2177 186 1234 1070 2482 4168 1035
399 3631 3743 2846 1951 5513 3355 2153 2685 443 2962
2011 512 4463 4884 2478 1484 3285 4868 1674 2135 2187
5948 4730 4724 1219 5807 3643 1018 2103 5244 3714 3460
1968 1626 1350 3878 5289 5785 1404 1985 1398 2938 661
5016 957 23 3985 2599 1337 4335 1470 394 4335 5099
2773 3709 4548 3175 5016 2292 3321 3722 2400 4758 3744
976 1796 5402 3991 5415 5325 3361 2922 3655 2038 203
5549 1016 3985 4833 2033 3804 4815 3003 3146 470 5060
4032 4528 2746 5419 5842 3991 3560 2408 4440 1416 1395
1264 88 3707 2968 5895 1591 1400 3377 165 3189 4744
88 5148 5639 1319 2846 4811 4656 4982 1795 872 2713
4876 2853 1952 1450 3 3865 1367 1358 1593 3469 2997
262 1133 5037 1510 3357 442 4600 460 4680 7 895
323 707 4650 3302 3620 450 2766 3469 737 184 2357
2592 1157 2699 2738 2613 4869 3892 657 918 3170 3688
1351 5751 1447 4042 819 5489 4115 5838 902 1432 2002
5605 751 4303 2906 5486 5836 859 3513 2922 5617 5302
1465 2994 324 4858 4543 2304 1875 3023 4365 4257 2137
2247 782 5208 3378 5837 3338 2056 2146 2210 2296 456
3709 3932 2851 2594 5904 666 3401 4133 2561 3517 3205
4301 5929 211 4172 2060 1738 435 5188 2600 4292 997
4766 4106 4117 4996 5062 2498 1373 1621 4725 3747 5937
4806 550 1999 2561 5075 1222 5377 188 3077 103 2277
3141 4756 3403 627 2149 2649 4034 1994 5052 831
3800 3451 2854 2386 125 3657 122 4497 1554 3719
1881 496 1796 5731 270 218 445 5485 4075 2845
1858 3334 3511 901 1908 4265 856 5122 1752 1174
2550 3455 3922 2266 2267 749 4655 2329 4766 2967 738
1573 5376 2507 5218 5402 4281 1888 3818 344 4229 5304
480 5342 1793 4035 118 3880 5399 2204 1078 2990 1369
89 664 5134 4875 4738 161 1647 4737 5886 2547 4617
2749 3038 1661 3446 1274 1009 4411 2870 826 1252 1298
2969 5610 5524 5427 5843 1781 5927 4359 4994 4515 2380
2414 2370 1067 3126 5898 47 972 277 4282 2800
1592 1140 4072 4814 660 2489 29 1784 1540 3433 4279
569 1738 1121 1386 2759 2519 171 2644 2922 3512 3216
4393 1575 5434 2108 1180 3353 3937 3434 3849 3263 248
5495 3237 1508 3699 3979 3817 572 1099 5657 1457 4619
458 86 2105 1490 1483 4572 5706 4235 5284 5259 4889
1904 3723 1445 2311 2975 2060 5017 1975 3794 4399 5671
3260 1929 3208 829 2098 4910 5690 5818 4490 5149 3905
942 2528 3802 1978 2960 3358 1171 171 3949 321 3565
1543 4245 4435 610 2925 5190 381 1538 3966 2291 224
4494 4065 4137 3171 4402 4750 3701 3056 1544 5105 3184
4254 1655 310 5490 1960 5519 3363 1592 3948 743 462
5055 3507 909 2263 4569 875 621 5462 299 1058
496 1809 5188 2714 1202 232 1951 2081 452 1015 528
3252 702 4170 1779 2390 1385 837 4816 3858 5050 2675
3780 2720 163 1139 2592 2882 5223 4918 1063 1176 2196
1755 1613 2355 609 4848 1739 1126 4746 1420 4179 3315
2019 4099 5719 2204 3612 3490 3251 5738 2535 22
1444 3588 3651 4941 5924 4316 1357 3645 816 470 3529
2777 2912 714 5842 592 358 995 4583 2040 255 4029
1279 2591 3872 4111 5293 447 4130 2365 1235 1247 5694
45 525 4496 2667 4400 3290 3544 1734 338 3908 3100
3539 1535 3072 617 1455 2392 1471 4525 4963 5454 4369
4628 2152 4773 2176 1881 4396 5659 1517 2155 4224 5271
2803 1469 5422 3896 1682 2065 2940 38 2442 1876 2469
4507 3404 618 1521 5294 1458 1835 5372 545 1553 5915
3672 113 4586 2047 712 3054 5926 5999 2633 1107 5274
4448 4919 662 376 3349 2961 4077 2971 2431 4814 2406
5513 5972 5101 2864 556 1484 2763 2863 5597 4279 4534
422 4368 91 5344 5875 5828 15 4961 3597 4753 1506
1535 627 4084 1355 3707 1334 3987 4652 1492 1696 1434
4747 5492 21 5854 5252 5730 4419 4577 3449 1133 3733
3830 3927 3374 3349 3970 4952 4651 4895 2603 2498 2004
1878 3534 825 3692 2612 4154 239 5303 5650 3789 4529
5622 4944 862 3255 456 4253 3262 3940 989 5363 2062
815 4563 3302 1843 5770 3435 1922 601 4372 5727 2579
3326 1204 2366 2525 2903 5168 5115 4164 419 1255 1922
901 3586 3734 2206 1309 786 4312 1369 2966 5451 2766
1777 5468 119 3892 2798 4024 5927 430 4349 5 417
400 3342 2793 5868 3129 5848 458 4186 4692 1831 4324
956 5249 2888 1053 1077 5186 3153 3528 3980 433 1847
2639 1145 2288 2994 732 1842 3238 2121 4374 2956 4730
4662 3731 2508 3031 2149 40 2047 4341 3128 1270 67
3296 3540 1363 3386 1990 1538 4920 3541 1463 1982 3896
2301 1057 2798 4480 4332 4069 2131 3655 2725 2850 5414
1280 3880 5069 4833 4275 3427 944 2609 133 1972 5403
428 5412 394 1487 3567 2705 1803 3088 3210 4631 375
3864 1495 3139 3391 578 3673 5515 2906 1117 3590 3277
3904 3446 5903 3266 5321 5456 4464 5291 5189 2012 2056
8 3179 4210 1519 2186 3335 4819 2419 1479 1232 5480
913 1848 2896 604 5760 4458 5499 4933 3607 837 4430
5074 4068 2239 2067 5204 3375 3212 2041 5854 3434 2885
4176 1084 4319 5295 3403 961 1569 816 1510 3973 1352
5222 2156 1265 4328 5750 1871 5094 1409 4573 5809 5122
4846 5842 2472 3103 2692 3364 2350 1515 1407 5295 4231
5008 1342 4454 2734 5446 2739 1383 799 5394 2929 4919
4602 4701 5792 257 276 5522 3719 2407 1807 2534 3215
4652 989 4258 4985 2121 4257 4879 5109 1545 1590 5918
5345 4166 4064 5446 4132 491 2611 1508 2618 1178 2359
4347 4288 5740 5598 3850 5704 3671 1895 615 5559 1318
1213 655 2223 862 2657 968 985 2622 2424 1086 142
2130 678 139 1097 701 916 3068 1537 2676 580 4867
1684 5600 1849 3733 436 4925 217 1991 4839 5256 4319
1599 1927 4107 4771 73 1831 3561 4667 5950 4579 4096
5574 5495 3767 4143 1001 4059 3095 974 5051 1809 1485
1527 2015 439 2496 2421 4352 577 1061 356 1134 1052
5005 2238 5881 4076 555 3326 2220 3816 488 4851 1158
1302 2664 2483 1276 2728 1594 4941 3949 302 3438 5001
3548 2358 1995 81 613 396 4906 5453 4190 1549 5702
5041 4678 4021 1946 3612 819 2238 4532 2326 405 2104
4315 1923 497 2210 109 5840 4684 3669 1538 4660 2773
3596 5973 2932 2462 4369 5684 5875 21 2543 3861 437
306 3752 4194 155 5705 1243 2854 3645 1510 5596 1657
3070 3663 692 2615 1904 3099 5149 5446 4547 5518 891
1807 4826 2484 5961 5903 5274 2002 4618 1499 2454 1422
5752 3190 3375 5373 2770 3756 5514 4266 5419 4864 194
4718 4964 556 3366 3532 448 4737 1609 1884 1208 138
4857 2095 590 4505 2538 3635 5665 1486 5147 3219 230
1810 5936 861 1616 4222 5523 299 3908 3931 3224 2187
2960 5126 3879 5464 1050 1595 1082 5043 1653 5252 3648
1792 2310 5889 5668 646 924 1922 1198 3380 2890 5354
4827 5388 777 109 3387 5789 1634 2507 487 2391 1694
3150 2110 2595 4136 2488 5354 4370 269 2620 3717 4978
4038 5880 1220 1063 1464 4064 1866 1643 2838 5774 2145
687 1111 4897 121 921 5463 5076 4151 2761 1895 679
2282 731 5888 282 3469 1781 2541 1025 1149 1449 3061
3476 1612 5681 5430 3325 968 1121 1250 3634 1632 1710
1537 5946 1569 2393 2026 1581 521 5972 1494 5785 1234
4298 177 1197 4318 4416 2424 1834 5916 4108 4304 246
553 1189 2206 2183 1467 341 4589 3341 4890 1813 3633
149 4219 5414 3091 4382 5738 2174 3672 4282 5523 1860
3242 3169 5708 2163 5227 767 3082 2362 2451 395 3292
2253 1289 3252 3475 4548 1677 2809 5759 1690 343 1860
3365 1845 3579 4702 4129 50 4447 59 2567 1879 1954
2225 1668 4091 1640 1889 3340 1105 4245 3291 4709 3010
5312 1361 5609 1252 3469 3209 4171 3479 5650 3579 4662
336 3068 5976 1056 1905 2273 5709 877 2633 1258 3098
678 1517 5827 1164 1958 388 1434 3792 3694 5173 4181
3884 4454 5461 536 1842 3752 5715 4205 4367 3893 864
503 2481 1527 662 2212 4157 2726 4026 3054 258 1709
808 2650 5627 1882 1900 3693 2468 2047 3551 5726 3236
5532 173 1935 2006 752 3673 4891 5442 4396 1271 247
1891 2531 3680 663 3452 5075 5157 3772 2777 2776 197
3383 4674 2221 3519 596 4445 4275 5554 5319 377 5942
1738 4418 2394 460 5031 4154 4394 5121 2556 3339 4500
541 3420 2468 3089 2548 2944 842 780 3932 1566 5112
1652 5357 1452 5784 4710 4825 5704 2755 5187 585 3099
1505 3545 948 5826 484 2298 490 1810 442 1752 3133
1979 2434 729 3684 2310 2269 972 4346 3984 5849 3501
3170 905 5551 2231 5102 752 4329 4376 3798 4041 5798
5150 1384 5792 5023 4005 747 3706 4616 1092 2397 475
3363 3438 4258 5273 54 3133 1070 477 5562 482 4098
2486 5216 3585 5302 3037 2566 5256 1574 418 737 1857
2180 3788 4351 3681 4658 3980 3019 1086 1027 5109 5122
1916 4385 2559 4950 4296 5213 5727 5869 3629 3374 1348
5165 3181 2587 3144 1162 4484 261 5706 3398 2959 942
1369 2233 4410 1728 5936 24 37 3226 998 848 4506
1997 497 5465 880 462 5348 4062 2060 3000 2897 2652
3345 2547 2323 131 868 3346 4560 311 1896 2456 5688
856 3190 588 5300 3201 4735 84 399 4746 474 3058
3092 5580 4705 4218 5815 839 4927 759 5023 3648 864
326 135 4630 3299 782 5323 4537 3914 2895 5706 1703
403 5845 2096 2973 3041 3780 2833 654 4772 3336 4143
3547 5981 3820 4665 4082 2175 5579 3447 4080 4973 891
2071 2971 1208 419 472 3758 2300 5441 1186 4689 2889
4952 108 3149 2060 39 3202 4990 5669 4355 4147 3801
1779 1443 1960 826 844 2694 1473 3883 4969 551 4042
651 2718 5889 1523 5628 1391 3509 2524 5339 1073 122
3915 3690 3112 5215 1246 1897 2767 1461 53 3492 4454
665 1688 1420 2946 4553 830 4316 4722 2798 3956 5644
4692 1296 370 3580 780 2625 1821 3409 2119 4661 547
5576 3873 5072 5546 2292 1397 3099 4019 5565 5735 2090
4561 2695 3208 3577 4657 204 4961 5040 4030 5484 5925
498 5693 803 4024 1491 3574 4791 2926 2131 1694 261
975 4119 2309 3392 4362 5994 3157 2935 3040 36 1574
2367 2689 2801 4057 3471 2090 2219 1209 596 1410 3605
2903 324 2403 1501 4393 636 1761 2563 5754 5924 4123
1692 5057 5508 5031 5136 5931 1095 4799 5736 2762 3753
5083 3619 179 5239 176 3323 61 41 4773 4892 3444
5315 18 3645 2951 3919 1901 881 4234 2427 314 1191
4336 4926 2399 4079 790 3459 177 1367 3125 3380 5506
1196 3245 1560 4635 1186 2391 2106 1921 2692 2038 1597
5458 5044 2765 5701 2360 4779 4561 677 1517 2423 4310
2659 1912 4251 1319 5196 2096 351 1130 4357 2191 3541
1094 5176 5149 2633 153 5675 1288 1332 4791 3257 2442
2109 2029 1997 5194 816 670 5927 5903 751 2576 2463
463 3543 158 1897 5966 741 3013 3525 2456 2517 1311
1447 2641 1028 4476 4089 377 5450 4714 3005 4641 5952
3798 5729 5693 727 3803 847 4726 5345 1056 3761 5708
4533 5188 4993 1362 1078 2815 4457 4124 862 242 4327
858 1425 3008 2558 152 3938 577 687 3671 1321 3707
5690 2165 4429 3086 3189 5950 1763 3347 4174 2996 5021
3025 5439 5016 2878 2846 14 669 5563 4627 764 1862
3103 3104 5495 624 5046 1587 5509 4851 4267 3422 4191
3588 1164 5495 4560 3308 322 2881 5443 2213 4746 2500
1073 312 3075 5125 5932 2650 2260 3499 4673 1516 2281
2784 2160 4074 5991 3339 1223 4130 5748 3416 5366 4087
3154 2627 1197 4724 1207 5613 679 1616 4631 5387 1681
747 632 1110 5197 4792 2163 2846 5962 4469 288 4977
3837 2439 1034 5442 2640 26 4307 1061 4088 5009 5859
651 4883 4997 5655 3302 458 401 619 1870 2340 1253
2078 1578 5810 588 2818 4049 3323 4919 1850 841 1356
4197 5117 1603 4877 671 1531 2261 5969 922 2261 4042
2461 3994 4004 2848 3005 273 4241 717 5250 2523 5325
4098 2784 783 2198 1838 5332 5506 819 1215 5899 313
4357 1797 1171 2880 148 5428 1197 1146 2388 2543 4073
2133 3757 3940 2035 1122 3152 5618 3278 1762 911 3622
3100 5698 1633 3351 2401 1359 5894 575 1789 2784 5496
468 757 3589 3947 3752 2436 793 5470 1867 3976 2961
308 4481 1729 1910 2412 944 5927 3048 3748 4959 4711
5509 880 207 1334 5920 5708 1061 5334 4798 206 2628
811 4831 5312 41 4764 5405 2510 644 3125 260 1529
543 274 3459 349 4353 3085 5574 323 1515 3113 3964
583 3075 1340 3444 2737 880 2680 3903 138 5010 3980
2517 3946 3839 3049 5657 4738 5107 1919 4603 3926 5680
1623 3893 3155 5152 575 4807 4368 2140 5906 2806 4116
2772 3757 321 5821 1309 5097 1975 2484 289 4392 1806
3697 3934 1029 832 2813 4998 710 2843 5967 4824 4785
1914 1045 4959 47 5188 3422 2587 4216 46 3441 1164
3518 721 2594 2097 1288 5212 4000 5960 84 1164 4504
2337 4580 3048 1153 5279 2274 292 4706 3699 2726 1774
4184 1099 1551 3747 4821 3337 3634 5977 4480 4534 4111
5944 3443 3523 3731 2730 4386 1710 5081 115 28 1436
4270 3767 1021 3407 5832 5987 4396 198 5009 4485 1749
5667 5569 3247 1414 1437 2437 1041 5336 4533 3454 598
4123 2164 2823 364 2943 1806 5673 2663 5863 1650 4534
3896 5276 4405 69 3450 1230 3943 2855 3071 2979 3794
2965 3439 1266 5241 4138 3164 851 5679 2098 3855 4867
567 695 4300 1963 5425 4017 2937 4031 812 1976 783
3752 4345 473 204 1599 4726 3542 4338 5562 926 5226
240 5348 3440 4910 1416 4771 163 3308 2492 4643 3454
3806 4669 2782 3368 2277 5618 1390 1710 2990 951 3682
4988 4072 1476 5150 1822 4193 5445 2146 936 1368 5654
5350 1351 2727 2736 3495 2440 4911 49 5614 5554 376
2643 3188 1285 3871 3287 4388 4534 2583 4819 3506 3462
3515 300 4537 4930 749 4779 1920 5 4939 4779 2125
5490 5992 1323 5975 2910 4003 2400 3 243 2875 3209
108 2789 2717 1792 3305 2017 1327 4473 3997 4068 4929
3472 958 546 4696 3641 2581 4386 4921 800 2240 3455
290 5362 3624 1200 3002 5360 743 1407 5694 5299 826
5977 960 795 646 2809 2024 3849 1117 356 1923 3001
985 2861 204 853 2623 2133 4312 2402 3355 608 5813
4979 21 4731 418 2776 5906 237 3665 1398 1061 48
4490 20 1643 2849 195 5200 5993 2100 1372 1482 413
4636 1991 2165 76 5479 3381 4434 5726 2948 2899 5317
4555 4875 4491 1432 5186 151 5010 3275 405 3621 1911
392 3245 5378 3470 525 2261 1976 3559 5736 5774 2404
3801 2187 262 2203 2860 5167 1085 4558 2876 4497 494
3589 3408 4822 4667 5758 1889 2211 5048 432 5988 800
3496 406 5145 4316 4892 2115 5261 557 235 3230 1266
285 5857 1036 5756 589 328 1002 3216 4837 576 5081
2799 3752 735 5998 5039 5771 595 2608 4676 597 1548
4134 2845 3684 3001 5533 448 5988 673 3244 2497 3480
5761 4054 115 4526 722 1962 2127 1374 3297 3941 4715
3610 1023 3137 3526 3628 405 2909 4022 1916 4875 3333
4459 5528 540 2113 4473 1240 3214 5324 2687 839 5670
2341 5812 2564 2118 173 2580 3707 5415 39 1186 3896
1690 488 4864 5168 1043 5301 2293 282 1334 998 3455
2946 4582 2791 5101 4152 1385 686 5291 1688 2881 5414
5716 5042 493 2021 2448 5631 1008 3969 2855 5334 2207
5422 1422 147 4826 2154 736 5108 3814 2964 4504 5714
2847 5320 3049 4736 1986 523 5975 3938 1570 3284 5031
1980 3519 3665 4144 157 3174 5643 5910 5303 2754 4901
366 1888 2891 1554 805 1648 4548 3853 4755 3121 2282
4646 1503 5017 3705 3895 4516 2794 1689 5528 5022 3349
3051 5944 795 5365 615 3592 3753 4089 5057 5489 1547
2775 723 1815 4993 1621 780 4540 1289 525 4054 4455
5402 5943 479 1249 4718 2253 180 1614 1782 2253 2607
3072 5851 1145 2939 452 0 2986 3558 4492 1685 1455
3094 1734 5916 2918 2716 4337 4147 2674 4138 1339 5095
4076 5205 1236 2679 1477 4168 583 110 5997 5422 1149
2248 5824 2155 5148 1938 4233 5199 402 1114 4200 2361
4822 37 3777 59 135 1679 5927 47 3707 5143 72
4589 734 265 230 4329 2192 2619 343 5844 4338 4053
703 1991 5466 351 4614 4848 413 3790 664 1838 4716
2828 412 775 5855 432 3851 5656 2349 5076 5554 1531
998 3275 1396 5750 2442 3254 3861 4952 5181 4626 3445
5340 3126 631 5294 4233 674 3727 4502 1700 5336 5168
4387 5058 3813 53 2284 762 2721 1982 2998 1893 1156
519 695 2213 3755 4550 158 67 3152 16 4972 1720
2420 3014 1528 1557 2037 3039 3539 160 4216 2572 5528
555 2269 4857 4039 5233 5295 4926 1207 5954 660 3133
3552 238 2549 3285 1716 5118 864 2197 1818 3505 4368
4105 3577 4834 3306 2610 3017 1037 3404 1671 2655 2587
824 1039 3626 4385 237 4697 1796 3649 2530 4168 2133
5593 30 5381 578 1710 2841 2629 3037 1739 658 4560
4517 1472 4174 4030 5983 2267 4513 1148 1497 1567 5633
5320 3207 3209 2515 5752 4834 351 3895 2692 4704 5071
590 113 779 787 3268 5461 4074 1345 4279 5639 3830
2631 3117 3269 4535 1758 4982 2633 498 1680 5865 3071
217 1421 3593 3889 2958 4986 5330 2726 1221 1363 1057
5563 1344 3889 5693 4569 4858 4689 1925 4686 4348 2376
705 5884 3669 4469 2434 3365 4503 2767 5360 5898 2161
1354 1287 325 790 4895 318 4685 3389 510 5302 4408
1523 2923 5963 2518 1469 3755 1931 5950 714 2008 2136
3963 1912 2486 1477 1356 2316 3190 1177 4010 1129 5653
5666 2266 4252 3243 5100 2282 5981 298 5748 1988 1627
3761 4089 390 2790 1667 5155 2064 1820 234 2914 1575
1587 3150 2804 3300 3338 3004 3480 1544 52 1034 1296
5946 2786 553 5042 1310 1035 2011 2789 2241 5744 3153
316 1954 322 254 3583 3902 3370 1691 5616 1334 1106
3703 5504 3653 1437 5848 525 1812 5295 4481 5486 2711
2439 2234 1971 3678 2645 4558 1338 2731 3788 3273 5766
3727 832 3722 928 2671 5813 266 3594 3531 623 253
1324 5999 3968 3740 1674 1748 773 613 3756 5372 3914
1400 286 3193 524 933 3878 1814 2884 1166 42 5315
119 3345 2678 1421 2807 3043 5907 1148 5924 2028 697
2401 583 819 5578 1052 10 368 5248 2834 5625 5073
2176 5911 3295 1464 4651 1396 838 3826 4251 2685 3453
5971 4192 2731 4230 3198 4072 3644 3178 4354 5126 1659
154 3776 2658 1297 5359 4667 4185 377 339 3877 5830
5871 1579 4768 3125 3269 588 2591 3179 5296 2103 3837
4053 2273 959 4339 5784 4412 2568 1124 575 2317 4595
2049 4771 1855 2476 5317 4851 1390 5870 774 3218 1620
1010 2733 26 4691 3925 746 2609 3187 5522 5022 5812
5123 3162 2204 867 393 2497 1595 959 2018 2087 4664
4121 1251 2455 141 4838 5786 2850 607 549 471 2024
3985 2450 3066 4749 2875 5531 5322 4486 5273 3045 2911
2979 4573 3218 5840 4047 2662 4072 792 3441 5089 5013
4978 4574 2175 4015 282 852 2945 2966 1807 5222 3770
4301 2904 4275 5815 984 2022 1838 1783 3782 1432 2307
4945 2162 3548 4781 4490 1816 5851 5494 331 383 3986
3060 4252 5348 128 202 711 947 477 4273 4748 3455
2495 4125 2887 790 1193 5375 1800 5831 561 5178 5256
3595 656 4446 3775 2472 4595 608 2194 5645 2809 4538
633 4270 4697 4000 1908 4280 4625 174 1587 3229 1418
5779 5459 2618 4114 4371 2960 88 688 1440 3750 1569
3356 4376 5188 2847 2660 4401 213 60 915 4862 2506
462 370 391 161 1583 4690 1893 5072 773 4597 5296
3284 3842 2241 1856 4467 1574 3522 2633 1876 8 1961
4435 1473 4257 5604 1206 1991 5244 5140 2432 1837 1831
833 5799 2487 4584 4169 2765 4791 5977 2216 4046 391
5946 3649 1086 1994 2809 1493 3151 2146 2734 4417 2015
1114 664 2047 2530 5362 2203 784 283 1154 5241 2085
2133 2371 5939 2731 3209 3807 2881 122 2028 3000 3779
4217 3402 810 1108 3593 234 3423 166 2844 2438 1208
5754 4404 4081 2913 2282 4096 300 4870 2482 1286 1654
4619 838 375 1485 5017 4027 3325 1881 694 3095 1063
1678 5457 5880 627 2206 3379 1172 2320 3125 1968 578
5328 1158 59 1679 907 4754 1490 3825 4663 3386 280
722 1888 133 2938 1720 184 5065 1139 3755 2937 119
1845 3976 3475 4981 1357 1579 4846 1248 3624 1237 712
4617 2378 1029 182 5776 2262 316 5112 5132 2446 3390
2147 811 3399 775 464 3647 2145 5847 3066 1505 2271
2294 339 2975 5424 186 5801 328 4103 5003 5794 1819
2688 5188 3178 1997 5193 150 5207 1929 5631 5629 3507
1082 2438 3434 1521 1003 1739 3044 2337 2787 5520 1394
5067 1924 3213 3161 152 1883 2569 4328 5871 1534 3477
489 4117 3688 4194 132 4522 1062 2450 5836 4503 5392
5111 3748 3523 5229 3791 65 939 4827 1205 4976 1023
1901 1787 5597 540 862 5536 547 3236 4655 583 4564
5387 4436 5737 2447 3608 4845 3122 1154 3760 5531 483
1310 5015 2845 5795 4815 1362 3029 2657 3013 1204 183
668 5931 3985 5099 5790 4984 2994 3002 2285 4852 176
1393 2492 3698 4614 498 610 394 5836 2365 3554 2881
5517 1292 5027 3173 837 5227 2231 5080 4585 5822 856
4142 5187 395 3497 4978 2682 4216 4213 2100 4949 1
4835 4634 371 1729 5825 1466 5707 1204 596 1961 4674
5499 3686 1506 1125 2873 3111 574 2027 3170 2869 2130
5888 4964 3204 4363 5947 4332 2068 702 5968 104 3524
4212 5778 3754 5642 2047 5751 1061 969 5644 1820 1380
618 4446 4778 3133 5465 1551 5663 3951 2983 2347 5438
3540 130 4796 2852 3744 3967 5105 2497 1987 2330 1100
795 302 22 4701 4192 5537 753 1017 2292 665 5335
3290 1722 5196 5362 389 3620 5090 3604 3788 2402 863
3535 4567 1213 2783 245 3759 4809 4497 2116 495 945
3436 289 3630 1019 2984 5529 3036 786 5044 3303 3
1694 2781 2667 4126 4858 4485 4520 1611 3778 981 1497
2469 1794 4627 2399 5971 513 3991 4572 3821 4654 2936
3940 3135 598 160 3278 5389 3263 1041 2911 339 3674
2801 1977 4040 2097 5916 4077 945 3255 5762 5272 1152
2328 3188 4116 1594 5842 2731 2730 1944 3870 1751 4429
871 1135 1642 75 4987 1256 827 1910 4208 2084 2430
872 811 1476 302 2212 739 1288 5238 846 3531 2993
5996 122 5840 5464 4876 787 2244 4727 2329 860 394
638 5062 5964 5647 954 3888 1882 1782 5636 3352 1764
4021 2727 3343 223 145 2574 5716 2957 814 5878 4820
167 3677 3106 3365 4490 1611 5882 95 3056 5349 4135
5016 3700 3048 3511 1121 2242 3965 5345 1188 3956 5577
5858 4055 548 3777 5041 4750 2458 1118 5763 4106 1363
3915 5677 1782 4770 2887 2551 2173 4747 4513 3596 794
5748 4618 1081 1163 5655 100 5558 1337 677 717 5538
3284 995 935 324 1458 5323 996 5450 4332 4217 5415
4751 3104 5246 676 303 2840 3724 283 4082 3876 556
129 3895 671 1743 399 5376 952 5439 3911 4810 2764
3256 1238 3626 2333 4643 1764 1431 3 3164 3471 3203
1017 3322 2742 2463 2281 3914 4652 4043 5322 3289 3229
2700 2754 2484 775 4679 3350 3074 4331 920 1330 1539
3463 5042 5977 1643 4817 1293 3941 3473 4258 3213 5369
1914 5809 4250 5403 813 1773 4401 4795 3569 1060 1216
880 1828 51 5577 2749 2670 2643 3037 2841 4096 1601
3658 3126 3499 3041 3037 2221 1212 265 999 5346 5456
943 2458 1589 5891 2862 4187 97 5742 4819 4923 4943
2044 755 2405 3302 2553 1779 5929 4914 1209 4492 4573
5400 2358 2264 1991 4430 5785 637 4713 3971 3852 1146
557 3143 3866 1067 4614 4126 3941 3014 3709 5827 280
2278 1966 2949 5572 2193 1478 546 1531 5075 3783 2974
4964 4035 3998 1130 2153 828 2658 5978 770 2511 2301
395 2403 3078 1448 1867 5266 1876 5635 5511 1031 4035
4170 1421 5278 5111 3810 1312 3433 4658 1506 4310 4525
2780 5012 3467 5980 6 940 2584 3474 1182 1927 3152
336 2705 2011 2116 5758
158 160 160 161 161 163 163 165 166 167 171 171
173 173 174 176 176 177 177 179 180 182 183 184
184 184 186 186 188 194 195 196 197 198 198 202
203 203 204 204 204 206 207 211 211 213 213 217
217 218 219 220 223 223 224 230 230 230 232 232
234 234 235 237 237 237 238 239 240 242 243 245
246 247 248 253 254 255 257 258 258 260 261 261
262 262 265 265 266 269 270 271 272 273 274 276
277 277 280 280 282 282 282 283 283 285 286 288
289 289 289 290 292 298 299 299 300 300 302 302
302 302 303 306 308 310 311 312 313 314 316 316
318 321 321 322 322 323 323 324 324 324 325 325
326 328 328 331 336 336 338 339 339 339 339 341
343 343 344 349 351 351 351 356 356 356 358 358
364 366 368 370 370 371 375 375 376 376 377 377
377 381 381 383 388 389 390 391 391 392 393 394
394 394 394 395 395 395 396 396 399 399 399 400
401 402 403 405 405 405 406 412 413 413 417 418
418 419 419 421 422 428 430 432 432 432 433 433
435 435 436 437 439 442 442 443 445 447 448 448
450 452 452 453 456 456 458 458 458 460 460 462
462 462 463 464 468 470 470 471 472 473 474 475
476 476 477 477 479 480 481 482 483 484 485 485
487 488 488 489 490 491 492 493 494 494 495 495
496 496 497 497 498 498 498 503 510 512 513 513
516 518 518 519 521 523 524 525 525 525 525 528
530 532 536 540 540 541 543 545 546 546 547 547
548 549 550 551 553 553 555 555 556 556 556 557
557 561 567 569 572 572 574 575 575 575 576 577
577 578 578 578 580 580 583 583 583 583 585 588
588 588 589 590 590 592 595 596 596 596 596 597
598 598 601 604 606 607 608 608 609 610 610 613
613 615 615 615 617 618 618 619 621 623 624 627
627 627 631 632 633 633 636 637 638 644 646 646
648 651 651 654 655 656 657 658 658 660 660 661
662 662 663 664 664 664 665 665 666 668 669 670
670 671 671 673 674 676 677 677 678 678 679 679
686 687 687 688 692 694 695 695 696 697 699 701
702 702 703 704 705 707 710 710 711 712 712 712
714 714 717 717 721 722 722 723 724 727 729 731
732 734 735 736 737 737 737 738 739 741 743 743
746 747 747 749 749 751 751 752 752 753 753 755
757 759 762 764 766 767 768 769 770 773 773 774
775 775 775 777 779 780 780 780 782 782 783 783
784 784 786 786 787 787 790 790 790 792 793 794
795 795 795 799 800 800 803 805 808 810 811 811
811 812 813 814 815 815 816 816 816 819 819 819
819 824 824 825 826 826 826 827 827 828 829 830
831 832 832 833 836 837 837 837 838 838 839 839
841 842 844 846 847 848 849 851 852 853 856 856
856 858 859 860 861 862 862 862 862 863 864 864
864 867 868 871 872 872 873 873 874 875 877 880
880 880 880 881 891 891 894 895 901 901 901 902
905 907 909 911 911 911 913 915 916 918 920 921
922 924 926 928 930 933 935 936 939 940 942 942
943 944 944 945 945 947 948 951 952 954 956 957
958 959 959 960 961 963 968 968 969 972 972 974
975 976 981 984 985 985 985 989 989 989 995 995
995 996 997 998 998 998 999 999 1001 1002 1003
1008 1009 1010 1015 1016 1017 1017 1018 1019 1020 1021
1023 1023 1025 1027 1028 1029 1029 1031 1031 1032 1032
1034 1034 1035 1035 1036 1037 1039 1041 1041 1043 1045
1050 1052 1052 1053 1054 1056 1056 1057 1057 1058 1058
1060 1061 1061 1061 1061 1061 1062 1063 1063 1063 1067
1067 1070 1070 1073 1073 1076 1077 1077 1078 1078 1081
1082 1082 1084 1085 1086 1086 1086 1092 1093 1094 1095
1097 1099 1099 1100 1105 1106 1107 1108 1110 1111 1114
1114 1117 1117 1118 1121 1121 1121 1122 1124 1125 1126
1127 1129 1130 1130 1133 1133 1134 1135 1137 1139 1139
1139 1140 1145 1145 1145 1146 1146 1148 1148 1149 1149
1152 1152 1153 1154 1154 1155 1156 1157 1158 1158 1160
1162 1163 1164 1164 1164 1164 1166 1171 1171 1172 1174
1176 1177 1178 1180 1182 1184 1186 1186 1186 1188 1189
1190 1191 1193 1196 1197 1197 1197 1198 1200 1202 1204
1204 1204 1205 1206 1207 1207 1208 1208 1208 1209 1209
1212 1213 1213 1215 1216 1219 1220 1221 1222 1223 1223
1229 1230 1232 1234 1234 1235 1236 1237 1238 1240 1243
1246 1247 1247 1248 1249 1250 1250 1251 1252 1252 1253
1255 1256 1258 1258 1264 1265 1265 1266 1266 1268 1270
1271 1271 1274 1276 1279 1280 1285 1286 1287 1288 1288
1288 1289 1289 1290 1292 1293 1296 1296 1297 1298 1302
1309 1309 1309 1310 1310 1311 1312 1317 1317 1318 1319
1319 1321 1321 1321 1323 1324 1327 1330 1332 1334 1334
1334 1334 1337 1337 1338 1339 1339 1340 1340 1342 1344
1345 1348 1350 1351 1351 1352 1354 1355 1355 1356 1356
1357 1357 1358 1359 1361 1362 1362 1363 1363 1363 1367
1367 1368 1369 1369 1369 1372 1373 1374 1375 1380 1383
1384 1385 1385 1386 1390 1390 1390 1391 1393 1394 1395
1396 1396 1397 1398 1398 1400 1400 1404 1407 1407 1409
1410 1412 1414 1416 1416 1417 1418 1420 1420 1421 1421
1421 1422 1422 1425 1431 1432 1432 1432 1434 1434 1436
1437 1437 1440 1442 1443 1444 1445 1446 1447 1447 1448
1449 1449 1450 1451 1452 1455 1455 1457 1458 1458 1461
1463 1464 1464 1465 1466 1467 1467 1469 1469 1470 1471
1471 1472 1473 1473 1476 1476 1477 1477 1478 1479 1482
1483 1484 1484 1485 1485 1486 1487 1490 1490 1491 1492
1492 1493 1494 1495 1495 1497 1497 1497 1499 1501 1503
1504 1504 1505 1505 1506 1506 1506 1508 1508 1510 1510
1510 1515 1515 1516 1517 1517 1517 1517 1518 1519 1521
1521 1523 1523 1527 1527 1528 1529 1531 1531 1531 1532
1533 1534 1535 1535 1537 1537 1537 1538 1538 1538 1539
1540 1540 1543 1544 1544 1545 1547 1548 1549 1550 1551
1551 1553 1553 1554 1554 1557 1560 1566 1567 1569 1569
1569 1570 1570 1571 1573 1574 1574 1574 1575 1575 1578
1579 1579 1581 1583 1586 1587 1587 1587 1589 1590 1591
1592 1592 1593 1594 1594 1595 1595 1597 1599 1599 1601
1603 1609 1609 1611 1611 1612 1613 1614 1616 1616 1617
1620 1621 1621 1623 1626 1627 1627 1628 1629 1632 1632
1633 1634 1637 1640 1642 1643 1643 1643 1647 1648 1650
1652 1653 1654 1654 1655 1657 1659 1661 1661 1667 1668
1671 1674 1674 1677 1677 1678 1679 1679 1680 1681 1682
1684 1685 1688 1688 1689 1690 1690 1691 1692 1693 1694
1694 1694 1696 1697 1699 1700 1703 1707 1708 1709 1710
1710 1710 1710 1716 1720 1720 1722 1723 1724 1725 1728
1729 1729 1734 1734 1738 1738 1738 1738 1739 1739 1739
1741 1743 1744 1748 1749 1751 1752 1752 1755 1758 1761
1762 1762 1763 1764 1764 1773 1774 1775 1777 1779 1779
1779 1781 1781 1782 1782 1782 1783 1784 1787 1789 1792
1792 1793 1794 1795 1796 1796 1796 1797 1800 1803 1806
1806 1807 1807 1807 1809 1809 1810 1810 1812 1813 1813
1814 1815 1816 1818 1819 1820 1820 1821 1822 1828 1830
1831 1831 1831 1832 1832 1834 1835 1837 1837 1838 1838
1838 1842 1842 1843 1845 1845 1845 1847 1847 1848 1849
1850 1853 1853 1855 1856 1857 1858 1860 1860 1862 1866
1867 1867 1870 1871 1875 1876 1876 1876 1878 1879 1881
1881 1881 1882 1882 1883 1884 1888 1888 1888 1889 1889
1890 1891 1893 1893 1895 1895 1896 1897 1897 1900 1901
1901 1903 1904 1904 1905 1908 1908 1908 1910 1910 1911
1911 1912 1912 1913 1914 1914 1914 1916 1916 1916 1919
1920 1920 1921 1922 1922 1922 1923 1923 1924 1925 1927
1927 1929 1929 1929 1931 1931 1935 1935 1938 1944 1946
1951 1951 1952 1954 1954 1958 1959 1960 1960 1961 1961
1962 1963 1964 1966 1968 1968 1971 1972 1974 1975 1975
1976 1976 1977 1978 1979 1980 1982 1982 1985 1986 1987
1987 1988 1990 1991 1991 1991 1991 1991 1994 1994 1995
1997 1997 1997 1999 2001 2002 2002 2002 2003 2004 2006
2006 2007 2008 2011 2011 2011 2012 2015 2015 2017 2018
2019 2019 2020 2021 2021 2022 2024 2024 2026 2027 2028
2028 2029 2033 2035 2037 2038 2038 2040 2041 2041 2044
2046 2047 2047 2047 2047 2047 2049 2056 2056 2060 2060
2060 2060 2062 2064 2065 2067 2068 2068 2068 2071 2077
2078 2078 2081 2084 2085 2087 2090 2090 2092 2093 2095
2096 2096 2097 2097 2098 2098 2100 2100 2103 2103 2103
2103 2103 2104 2105 2106 2108 2109 2110 2113 2115 2116
2116 2118 2119 2121 2121 2123 2125 2127 2130 2130 2130
2131 2131 2133 2133 2133 2133 2134 2135 2136 2137 2140
2145 2145 2146 2146 2146 2147 2148 2149 2149 2149 2150
2151 2151 2152 2153 2153 2153 2154 2155 2155 2156 2160
2161 2162 2163 2163 2164 2165 2165 2168 2170 2173 2174
2175 2175 2176 2176 2177 2180 2183 2186 2187 2187 2187
2189 2191 2192 2193 2194 2196 2197 2198 2199 2201 2203
2203 2204 2204 2204 2206 2206 2206 2207 2210 2210 2211
2212 2212 2213 2213 2216 2219 2220 2221 2221 2223 2225
2231 2231 2233 2234 2234 2235 2238 2238 2239 2240 2241
2241 2241 2241 2242 2242 2244 2245 2247 2248 2253 2253
2253 2260 2261 2261 2261 2262 2263 2264 2266 2266 2267
2267 2269 2269 2270 2271 2273 2273 2274 2277 2277 2278
2278 2280 2281 2281 2282 2282 2282 2282 2283 2284 2285
2285 2285 2288 2290 2291 2292 2292 2292 2293 2294 2296
2298 2300 2301 2301 2303 2304 2307 2309 2310 2310 2311
2314 2316 2317 2320 2323 2326 2326 2328 2329 2329 2330
2333 2337 2337 2340 2341 2347 2348 2349 2349 2350 2352
2353 2353 2355 2357 2358 2358 2359 2360 2361 2362 2363
2365 2365 2366 2367 2367 2370 2371 2376 2378 2380 2386
2388 2389 2390 2391 2391 2391 2392 2393 2394 2395 2397
2397 2399 2399 2400 2400 2401 2401 2402 2402 2403 2403
2404 2405 2406 2407 2408 2412 2412 2414 2417 2419 2420
2421 2423 2424 2424 2427 2427 2430 2430 2431 2432 2434
2434 2436 2437 2438 2438 2439 2439 2440 2442 2442 2442
2446 2447 2448 2450 2450 2451 2454 2455 2456 2456 2458
2458 2461 2462 2463 2463 2464 2468 2468 2468 2469 2469
2472 2472 2476 2478 2480 2481 2482 2482 2483 2484 2484
2484 2484 2486 2486 2487 2488 2489 2492 2492 2495 2496
2497 2497 2497 2498 2498 2500 2502 2506 2507 2507 2508
2510 2511 2515 2517 2517 2518 2519 2521 2523 2524 2525
2528 2530 2530 2531 2534 2535 2537 2538 2541 2543 2543
2547 2547 2548 2549 2550 2551 2553 2553 2556 2558 2559
2561 2561 2563 2564 2564 2566 2567 2568 2569 2572 2574
2576 2579 2580 2581 2582 2583 2584 2587 2587 2587 2588
2591 2591 2592 2592 2594 2594 2595 2595 2599 2600 2603
2603 2607 2608 2609 2609 2610 2611 2612 2613 2614 2615
2618 2618 2619 2620 2622 2622 2623 2625 2627 2628 2629
2631 2631 2633 2633 2633 2633 2633 2633 2633 2639 2640
2641 2643 2643 2644 2644 2645 2647 2649 2650 2650 2650
2652 2655 2657 2657 2658 2658 2659 2660 2662 2663 2664
2667 2667 2670 2671 2673 2674 2675 2676 2677 2678 2679
2680 2682 2682 2682 2682 2684 2685 2685 2687 2688 2688
2688 2689 2692 2692 2692 2694 2695 2699 2699 2700 2703
2705 2705 2709 2710 2711 2712 2713 2714 2716 2717 2718
2720 2721 2725 2726 2726 2726 2727 2727 2728 2728 2729
2730 2730 2731 2731 2731 2731 2733 2734 2734 2736 2737
2738 2739 2742 2746 2749 2749 2754 2754 2755 2759 2761
2762 2763 2764 2765 2765 2766 2766 2767 2767 2770 2771
2772 2773 2773 2775 2776 2776 2777 2777 2780 2781 2782
2783 2784 2784 2784 2786 2787 2789 2789 2790 2791 2792
2793 2794 2796 2798 2798 2798 2799 2800 2801 2801 2801
2801 2803 2804 2806 2807 2807 2809 2809 2809 2809 2812
2813 2815 2818 2821 2823 2828 2828 2830 2833 2834 2838
2840 2841 2841 2843 2844 2845 2845 2845 2846 2846 2846
2846 2847 2847 2848 2849 2850 2850 2851 2852 2853 2854
2854 2855 2855 2860 2861 2862 2863 2864 2868 2869 2870
2873 2875 2875 2876 2878 2879 2880 2880 2881 2881 2881
2881 2882 2884 2885 2885 2887 2887 2888 2889 2890 2891
2895 2896 2897 2899 2903 2903 2904 2906 2906 2907 2909
2910 2910 2911 2911 2912 2913 2914 2918 2918 2922 2922
2922 2923 2925 2925 2926 2929 2932 2935 2936 2937 2937
2938 2938 2939 2940 2943 2944 2945 2946 2946 2948 2949
2950 2951 2952 2956 2957 2958 2959 2960 2960 2960 2961
2961 2962 2964 2965 2966 2966 2967 2968 2968 2969 2971
2971 2973 2974 2975 2975 2975 2976 2979 2979 2983 2984
2986 2990 2990 2993 2994 2994 2994 2996 2997 2998 3000
3000 3001 3001 3002 3002 3003 3004 3005 3005 3008 3010
3013 3013 3014 3014 3017 3019 3020 3023 3025 3028 3028
3029 3031 3035 3036 3037 3037 3037 3037 3038 3038 3039
3040 3041 3041 3043 3044 3045 3048 3048 3048 3049 3049
3051 3054 3054 3056 3056 3058 3060 3061 3065 3066 3066
3068 3068 3070 3071 3071 3072 3072 3074 3075 3075 3077
3078 3078 3082 3085 3086 3088 3089 3089 3091 3092 3094
3094 3095 3095 3098 3099 3099 3099 3100 3100 3103 3103
3104 3104 3106 3111 3111 3112 3113 3117 3121 3121 3122
3125 3125 3125 3125 3126 3126 3126 3128 3129 3133 3133
3133 3133 3135 3137 3137 3139 3141 3143 3144 3146 3149
3150 3150 3151 3152 3152 3152 3153 3153 3154 3154 3155
3157 3161 3162 3164 3164 3169 3169 3170 3170 3170 3171
3173 3174 3174 3175 3178 3178 3179 3179 3179 3181 3181
3184 3187 3188 3188 3189 3189 3190 3190 3190 3190 3193
3193 3198 3201 3202 3203 3204 3205 3206 3206 3207 3208
3208 3209 3209 3209 3209 3210 3212 3213 3213 3214 3215
3216 3216 3218 3218 3219 3224 3226 3229 3229 3230 3236
3236 3237 3238 3242 3243 3244 3245 3245 3245 3247 3251
3252 3252 3254 3254 3255 3255 3256 3257 3260 3262 3263
3263 3266 3268 3269 3269 3273 3275 3275 3277 3278 3278
3284 3284 3284 3285 3285 3287 3289 3290 3290 3291 3292
3295 3296 3297 3299 3299 3300 3302 3302 3302 3302 3303
3305 3306 3307 3308 3308 3311 3312 3315 3315 3321 3322
3323 3323 3324 3325 3325 3326 3326 3329 3333 3334 3335
3336 3337 3338 3338 3338 3339 3339 3340 3341 3342 3343
3345 3345 3346 3347 3347 3349 3349 3349 3350 3351 3352
3353 3355 3355 3356 3357 3358 3361 3363 3363 3364 3365
3365 3365 3366 3368 3370 3374 3374 3375 3375 3377 3378
3379 3380 3380 3381 3383 3384 3386 3386 3387 3389 3390
3391 3392 3398 3399 3401 3402 3403 3403 3404 3404 3406
3407 3408 3409 3416 3420 3422 3422 3423 3427 3433 3433
3434 3434 3434 3435 3436 3438 3438 3439 3440 3441 3441
3443 3444 3444 3445 3446 3446 3447 3449 3449 3450 3451
3452 3453 3454 3454 3455 3455 3455 3455 3459 3459 3460
3462 3463 3467 3469 3469 3469 3469 3470 3471 3471 3471
3472 3472 3473 3474 3475 3475 3475 3476 3477 3479 3480
3480 3490 3492 3495 3496 3497 3499 3499 3501 3505 3505
3506 3507 3507 3508 3509 3511 3511 3512 3513 3513 3515
3517 3517 3518 3519 3519 3519 3522 3523 3523 3524 3525
3526 3528 3529 3530 3531 3531 3532 3534 3535 3539 3539
3540 3540 3540 3541 3541 3542 3543 3544 3545 3547 3547
3548 3548 3551 3551 3552 3554 3558 3559 3560 3561 3565
3567 3569 3574 3576 3577 3577 3579 3579 3579 3580 3583
3585 3586 3588 3588 3589 3589 3590 3592 3593 3593 3594
3595 3596 3596 3597 3604 3605 3607 3608 3610 3612 3612
3619 3620 3620 3621 3622 3623 3624 3624 3626 3626 3628
3628 3629 3630 3631 3633 3633 3634 3634 3635 3636 3638
3641 3643 3644 3645 3645 3645 3647 3648 3648 3649 3649
3650 3651 3653 3655 3655 3656 3657 3657 3658 3663 3665
3665 3669 3669 3671 3671 3671 3672 3672 3672 3673 3673
3674 3674 3677 3677 3678 3680 3681 3682 3684 3684 3684
3686 3688 3688 3690 3692 3693 3694 3697 3698 3699 3699
3700 3701 3701 3703 3705 3706 3706 3707 3707 3707 3707
3707 3707 3709 3709 3709 3709 3711 3713 3714 3717 3719
3719 3720 3722 3722 3723 3724 3727 3727 3731 3731 3733
3733 3734 3740 3743 3744 3744 3747 3747 3748 3748 3750
3752 3752 3752 3752 3752 3753 3753 3754 3755 3755 3755
3756 3756 3757 3757 3757 3757 3758 3759 3760 3761 3761
3767 3767 3767 3770 3772 3775 3776 3777 3777 3778 3779
3780 3780 3782 3783 3787 3788 3788 3788 3789 3790 3790
3791 3792 3792 3794 3794 3794 3798 3798 3798 3800 3801
3801 3802 3803 3804 3806 3807 3810 3813 3814 3815 3816
3817 3818 3820 3821 3825 3826 3830 3830 3837 3837 3839
3842 3846 3849 3849 3850 3851 3852 3853 3855 3858 3860
3861 3861 3864 3865 3866 3870 3871 3872 3873 3876 3877
3878 3878 3879 3880 3880 3882 3882 3883 3884 3886 3888
3889 3889 3892 3892 3893 3893 3895 3895 3895 3896 3896
3896 3896 3902 3903 3904 3905 3908 3908 3911 3912 3914
3914 3914 3915 3915 3919 3922 3925 3926 3927 3931 3932
3932 3933 3934 3937 3937 3938 3938 3940 3940 3940 3941
3941 3941 3943 3946 3947 3948 3949 3949 3949 3951 3956
3956 3956 3963 3964 3965 3966 3967 3968 3969 3970 3971
3971 3973 3974 3976 3976 3979 3980 3980 3980 3984 3985
3985 3985 3985 3986 3987 3991 3991 3991 3994 3997 3998
3998 4000 4000 4003 4004 4005 4010 4015 4015 4017 4019
4021 4021 4022 4024 4024 4026 4027 4029 4030 4030 4031
4032 4032 4034 4035 4035 4035 4038 4039 4040 4041 4042
4042 4042 4043 4044 4046 4047 4048 4049 4053 4053 4054
4054 4055 4057 4059 4059 4062 4064 4064 4065 4068 4068
4069 4072 4072 4072 4072 4073 4074 4074 4075 4076 4076
4077 4077 4079 4080 4081 4082 4082 4084 4087 4088 4089
4089 4089 4091 4092 4092 4095 4096 4096 4096 4098 4098
4099 4103 4105 4106 4106 4107 4108 4111 4111 4114 4115
4116 4116 4117 4117 4117 4118 4119 4121 4123 4123 4124
4125 4126 4126 4129 4130 4130 4131 4132 4133 4134 4135
4136 4137 4138 4138 4141 4142 4143 4143 4144 4146 4147
4147 4151 4151 4152 4154 4154 4157 4157 4164 4166 4168
4168 4168 4169 4170 4170 4171 4172 4174 4174 4174 4176
4178 4179 4181 4182 4184 4184 4184 4185 4186 4187 4190
4191 4192 4192 4193 4193 4194 4194 4197 4200 4205 4205
4205 4208 4210 4212 4213 4214 4216 4216 4216 4216 4217
4217 4218 4219 4220 4222 4224 4229 4230 4231 4233 4233
4233 4234 4235 4241 4245 4245 4247 4250 4251 4251 4252
4252 4253 4254 4256 4257 4257 4257 4258 4258 4258 4263
4265 4266 4267 4270 4270 4273 4275 4275 4275 4279 4279
4279 4280 4281 4282 4282 4286 4288 4292 4296 4298 4300
4301 4301 4303 4304 4307 4307 4310 4310 4312 4312 4315
4316 4316 4316 4318 4319 4319 4323 4324 4327 4327 4328
4328 4329 4329 4331 4332 4332 4332 4335 4335 4336 4337
4338 4338 4339 4341 4345 4346 4347 4348 4349 4349 4351
4352 4353 4354 4355 4357 4357 4359 4362 4363 4365 4367
4368 4368 4368 4369 4369 4370 4371 4372 4372 4373 4374
4376 4376 4376 4382 4382 4385 4385 4386 4386 4387 4388
4389 4392 4393 4393 4394 4396 4396 4396 4397 4399 4400
4401 4401 4402 4404 4405 4408 4410 4410 4411 4411 4412
4416 4417 4418 4419 4429 4429 4430 4430 4434 4435 4435
4436 4440 4441 4445 4446 4446 4447 4447 4448 4452 4453
4454 4454 4454 4455 4457 4458 4459 4463 4464 4464 4464
4467 4469 4469 4471 4472 4473 4473 4476 4479 4480 4480
4481 4481 4484 4485 4485 4486 4490 4490 4490 4490 4491
4492 4492 4494 4496 4497 4497 4497 4498 4500 4502 4503
4503 4504 4504 4505 4506 4506 4507 4512 4513 4513 4515
4516 4517 4517 4520 4522 4523 4525 4525 4526 4528 4529
4529 4532 4533 4533 4533 4534 4534 4534 4534 4534 4535
4537 4537 4538 4540 4541 4543 4545 4547 4548 4548 4548
4550 4553 4555 4558 4558 4560 4560 4560 4561 4561 4563
4564 4567 4569 4569 4569 4572 4572 4572 4573 4573 4573
4573 4574 4577 4579 4580 4582 4583 4583 4584 4585 4586
4586 4589 4589 4595 4595 4597 4600 4600 4602 4603 4605
4611 4614 4614 4614 4616 4617 4617 4618 4618 4619 4619
4625 4626 4627 4627 4627 4628 4630 4631 4631 4631 4632
4634 4635 4636 4641 4643 4643 4646 4650 4651 4651 4652
4652 4652 4654 4655 4655 4656 4657 4658 4658 4659 4660
4661 4662 4662 4663 4664 4665 4667 4667 4667 4669 4671
4673 4674 4674 4676 4678 4679 4680 4684 4685 4686 4689
4689 4690 4691 4692 4692 4696 4697 4697 4701 4701 4702
4703 4704 4705 4706 4709 4710 4711 4713 4713 4714 4715
4716 4718 4718 4722 4724 4724 4725 4726 4726 4727 4727
4730 4730 4731 4735 4736 4737 4737 4738 4738 4738 4741
4744 4746 4746 4746 4747 4747 4747 4748 4749 4749 4750
4750 4751 4753 4754 4755 4756 4758 4764 4764 4766 4766
4768 4770 4771 4771 4771 4772 4773 4773 4778 4779 4779
4779 4781 4784 4785 4791 4791 4791 4792 4793 4795 4796
4798 4799 4805 4806 4806 4807 4808 4809 4810 4811 4813
4814 4814 4815 4815 4816 4817 4819 4819 4819 4820 4821
4822 4822 4824 4824 4825 4826 4826 4827 4827 4829 4831
4833 4833 4834 4834 4834 4835 4837 4838 4839 4845 4846
4846 4848 4848 4851 4851 4851 4851 4852 4857 4857 4857
4858 4858 4858 4862 4864 4864 4867 4867 4868 4868 4869
4870 4871 4875 4875 4875 4876 4876 4877 4879 4883 4884
4887 4889 4890 4890 4891 4891 4892 4892 4895 4895 4897
4901 4906 4910 4910 4911 4914 4918 4919 4919 4919 4920
4921 4921 4922 4923 4925 4925 4926 4926 4927 4929 4930
4930 4932 4933 4939 4941 4941 4941 4943 4943 4944 4945
4949 4950 4952 4952 4952 4959 4959 4961 4961 4962 4963
4964 4964 4964 4969 4972 4973 4976 4977 4978 4978 4978
4978 4979 4981 4982 4982 4984 4985 4986 4987 4988 4990
4993 4993 4994 4994 4996 4997 4998 5001 5001 5001 5002
5003 5005 5005 5008 5009 5009 5010 5010 5012 5012 5013
5015 5016 5016 5016 5016 5017 5017 5017 5019 5020 5021
5022 5022 5023 5023 5027 5031 5031 5031 5037 5039 5040
5040 5041 5041 5042 5042 5042 5043 5044 5044 5046 5047
5048 5050 5051 5052 5053 5054 5055 5057 5057 5058 5060
5060 5062 5062 5065 5067 5069 5071 5071 5072 5072 5073
5074 5075 5075 5075 5076 5076 5080 5081 5081 5083 5089
5090 5094 5095 5097 5099 5099 5099 5100 5101 5101 5102
5105 5105 5107 5108 5109 5109 5111 5111 5112 5112 5115
5117 5117 5118 5121 5122 5122 5122 5123 5125 5126 5126
5132 5134 5135 5136 5140 5143 5143 5144 5145 5146 5147
5148 5148 5149 5149 5149 5150 5150 5152 5155 5157 5161
5165 5167 5168 5168 5168 5173 5173 5174 5176 5176 5177
5178 5181 5186 5186 5187 5187 5188 5188 5188 5188 5188
5188 5189 5190 5192 5193 5194 5196 5196 5197 5199 5200
5204 5205 5207 5208 5212 5213 5215 5216 5218 5222 5222
5223 5226 5227 5227 5229 5232 5233 5238 5239 5239 5241
5241 5244 5244 5245 5246 5247 5248 5249 5250 5252 5252
5252 5256 5256 5256 5259 5261 5264 5265 5266 5271 5272
5273 5273 5274 5274 5276 5278 5278 5279 5280 5284 5289
5291 5291 5291 5291 5293 5294 5294 5295 5295 5295 5295
5296 5296 5299 5300 5301 5301 5302 5302 5302 5303 5303
5304 5312 5312 5315 5315 5317 5317 5319 5320 5320 5321
5322 5322 5323 5323 5324 5325 5325 5328 5330 5332 5334
5334 5335 5336 5336 5336 5339 5340 5342 5344 5345 5345
5345 5346 5348 5348 5348 5349 5350 5350 5350 5353 5354
5354 5354 5356 5357 5357 5359 5360 5360 5360 5362 5362
5362 5363 5363 5365 5366 5369 5372 5372 5373 5373 5375
5375 5376 5376 5376 5377 5378 5381 5387 5387 5387 5388
5389 5392 5393 5394 5394 5399 5400 5400 5402 5402 5402
5403 5403 5405 5412 5414 5414 5414 5415 5415 5415 5419
5419 5422 5422 5422 5424 5425 5427 5427 5428 5430 5434
5438 5439 5439 5441 5442 5442 5443 5443 5444 5445 5446
5446 5446 5450 5450 5451 5453 5454 5456 5456 5457 5458
5459 5459 5460 5461 5461 5462 5463 5464 5464 5465 5465
5466 5466 5468 5470 5470 5475 5479 5480 5484 5485 5486
5486 5487 5489 5489 5490 5490 5492 5494 5495 5495 5495
5495 5496 5499 5499 5504 5504 5506 5506 5508 5509 5509
5509 5511 5513 5513 5514 5515 5516 5517 5518 5519 5520
5520 5522 5522 5523 5523 5524 5528 5528 5528 5529 5531
5531 5532 5533 5536 5536 5537 5538 5538 5539 5542 5546
5547 5548 5549 5549 5551 5554 5554 5554 5558 5559 5559
5560 5561 5562 5562 5563 5563 5565 5569 5569 5572 5573
5574 5574 5574 5576 5577 5577 5578 5579 5580 5580 5586
5593 5596 5597 5597 5598 5599 5600 5604 5605 5609 5610
5613 5614 5616 5617 5618 5618 5622 5622 5623 5623 5625
5626 5627 5628 5629 5630 5631 5631 5633 5635 5636 5637
5639 5639 5642 5643 5644 5644 5644 5645 5647 5648 5650
5650 5651 5653 5654 5655 5655 5656 5657 5657 5659 5663
5665 5666 5667 5668 5669 5669 5670 5671 5673 5675 5676
5677 5679 5680 5681 5684 5688 5690 5690 5690 5692 5693
5693 5693 5694 5694 5694 5698 5701 5702 5704 5704 5705
5705 5705 5706 5706 5706 5707 5708 5708 5708 5709 5714
5715 5716 5716 5719 5720 5720 5726 5726 5727 5727 5729
5730 5731 5735 5736 5736 5737 5737 5738 5738 5740 5742
5743 5744 5748 5748 5748 5750 5750 5751 5751 5751 5752
5752 5754 5754 5756 5758 5758 5759 5760 5761 5761 5761
5762 5763 5766 5770 5771 5774 5774 5776 5776 5778 5779
5779 5782 5783 5784 5784 5785 5785 5785 5786 5789 5790
5792 5792 5794 5795 5798 5799 5801 5801 5802 5807 5809
5809 5810 5812 5812 5813 5813 5815 5815 5818 5821 5822
5824 5825 5826 5827 5827 5828 5830 5831 5832 5833 5836
5836 5836 5837 5838 5840 5840 5840 5842 5842 5842 5842
5843 5844 5845 5847 5848 5848 5849 5851 5851 5854 5854
5855 5857 5858 5859 5859 5863 5865 5868 5869 5870 5871
5871 5875 5875 5875 5877 5878 5880 5880 5881 5882 5883
5884 5885 5886 5888 5888 5889 5889 5891 5893 5894 5895
5897 5897 5897 5898 5898 5899 5903 5903 5903 5903 5904
5906 5906 5907 5910 5911 5915 5916 5916 5916 5918 5918
5920 5924 5924 5924 5925 5925 5926 5927 5927 5927 5927
5927 5929 5929 5931 5931 5932 5936 5936 5937 5939 5942
5943 5944 5944 5946 5946 5946 5947 5947 5948 5950 5950
5950 5952 5954 5956 5960 5961 5962 5963 5964 5966 5967
5968 5969 5971 5971 5972 5972 5973 5975 5975 5975 5976
5977 5977 5977 5977 5978 5980 5981 5981 5983 5987 5988
5988 5989 5991 5991 5992 5993 5994 5996 5997 5998 5999
5999 5999
Time = 2110.0
import java.util.Scanner;
import java.util.*;
public class Pgm6a
{
public static void main(String[] args)
{
int n;
int []w;
int []p;
int i,M;
System.out.println("Enter the number of elemens :-");
Scanner input=new Scanner(System.in);
n=input.nextInt();
System.out.println("Enter weight of each items :-");
w=new int[10];
for(i=1;i<=n;i++)
w[i]=input.nextInt();
System.out.println("Enter the Profits of each items :-");
p=new int[10];
for(i=1;i<=n;i++)
p[i]=input.nextInt();
System.out.println("Enter Knapsack Capacity :- ");
M=input.nextInt();
Knapsack(n,w,p,M);
}
public static void Knapsack(int n,int w[],int p[],int M)
{
int i,j;
int v[][]=new int[20][20];
for(i=0;i<=n;i++)
{
for(j=0;j<=M;j++)
{
if(i==0||j==0)
{
v[i][j]=0;
}
else if(j-w[i]<0)
{
v[i][j]=v[i-1][j];
}
else
v[i][j]=max(v[i-1][j],v[i-1][j-w[i]]+p[i]);
}
}
System.out.println("Profit matrix is :- ");
for(i=0;i<=n;i++)
{
for(j=0;j<=M;j++)
{
System.out.print(v[i][j]+"\t");
}
System.out.println(" ");
}
System.out.println("Max. Profit is :-"+v[n][M]);
}
public static int max(int x,int y)
{
return (x>y)?x:y;
}
}
-:OUTPUT:-
b) Greedy method :-
import java.util.*;
public class Pgm6b
{
public static void main(String[] args)
{
int i,j,n;
float p[]=new float [10],w[]=new float[10],temp,M;
float r[]=new float [10];
System.out.println("Enter the number of items :-");
Scanner input=new Scanner(System.in);
n=input.nextInt();
System.out.println("Enter the capacity of knapsack :-");
M=input.nextInt();
for(i=1;i<=n;i++)
{
p[i]=input.nextFloat();
w[i]=input.nextFloat();
r[i]=(p[i]/w[i]);
System.out.print(r[i]);
System.out.println();
}
for(i=1;i<=n;i++)
{
for(j=1;j<=n-1;j++)
{
if(r[j]<r[j+1])
{
temp=r[j];
r[j]=r[j+1];
r[j+1]=temp;
temp=w[j];
w[j]=w[j+1];
w[j+1]=temp;
temp=p[j];
p[j]=p[j+1];
p[j+1]=temp;
}
}
}
System.out.println("The Sorted Profits are :- ");
for(i=1;i<=n;i++)
{
System.out.print(p[i]+"\t");
}
System.out.println();
System.out.println("The Sorted Weights are :- ");
for(i=1;i<=n;i++)
{
System.out.print(w[i]+"\t");
}
System.out.println();
System.out.println("The Sorted p/w Ratio is :- ");
for(i=1;i<=n;i++)
{
System.out.print(r[i]+"\t");
}
greedy(M,w,n,p);
}
public static void greedy(float M, float w[],int n,float p[])
{
float x[]=new float [10],tp=0,u;
int i;
u=M;
for(i=1;i<=n;i++)
{
x[i]=0;
}
for(i=1;i<=n;i++)
{
if(w[i]>u)
{
break;
}
else
{
x[i]=1;
tp=tp+p[i];
u=u-w[i];
}
}
x[i]=(u/w[i]);
tp=tp+(x[i]*p[i]);
System.out.println();
System.out.println("The Resultant Vector is :- ");
for(i=1;i<=n;i++)
{
System.out.print(x[i] +"\t");
}
System.out.println();
System.out.println("The Maximum Profit is :- "+tp);
}
}
-:OUTPUT:-
M=40
N=3
ITEM WEIGHT PROFIT
3.5 10 35
1.6 25 40
1.5 20 30
import java.util.Scanner;
public class Pgm7
{
public static void main(String args[])
{
int i,j,n,src;
int c[][]=new int [10][10];
int dist[]=new int[10];
System.out.println("Enter the number of vertices:-");
Scanner input =new Scanner(System.in);
n=input.nextInt();
System.out.println("Enter cost adjacency matrix:-");
for(i=1;i<=n;i++)
{
for(j=1;j<=n;j++)
{
c[i][j]=input.nextInt();
}
}
System.out.println("Enter source vertex:-");
src = input.nextInt();
dijkstras(n,c,src,dist);
System.out.println("Shortest path is:-");
for(i=1;i<=5;i++)
{
System.out.print(+src);
System.out.print("----------->");
System.out.print(+i);
System.out.print("=");
System.out.println(+dist[i]);
}
}
public static void dijkstras(int n,int c[][],int src,int[] dist)
{
int i,j,count,min,u = 0;
int vis[]=new int[10];
for(i=1;i<=n,i++)
{
vis[i]=0;
}
for (i=1;i<=n;i++)
{
dist[i]=c[src][i];
}
count=0;
vis[src]=1;
dist[src]=0;
count=count+1;
while(count!=n)
{
min=999;
for(i=1;i<=n;i++)
{
if(vis[i]==0)
{
if(dist[i]<min)
{
min=dist[i];
u=i;
}
}
}
vis[u]=1;
count=count+1;
for(j=1;j<=n;j++)
{
if(vis[j]==0)
{
if(min+c[u][j]<dist[j])
{
dist[j]=min+c[u][j];
}
}
}
}
}
}
-:OUTPUT:-
import java.util.Scanner;
public class Pgm8
{
public static void main(String args[])
{
int i,j,n;
int c[][]=new int[10][10];
System.out.println("Enter Number of vertices:-");
Scanner input = new Scanner(System.in);
n=input.nextInt();
System.out.println("Enter the cost adsjacecy matrix:-");
for(i=1;i<=n;i++)
{
for(j=1;j<=n;j++)
{
c[i][j]=input.nextInt();
}
}
kruskal(n,c);
}
public static void kruskal(int n,int c[][])
{
int ne,min,mincost;
int parent[]=new int [10];
int i,j,u=0,v=0,a=0,b=0;
mincost=0;
ne=0;
for(i=1;i<=n;i++)
{
parent[i]=0;
}
while(ne!=n-1)
{
min=999;
for(i=1;i<=n;i++)
{
for(j=1;j<=n;j++)
{
if(c[i][j]<min)
{
min=c[i][j];
u=a=i;
v=b=j;
}
}
}
while(parent[u]!=0)
{
u=parent[v];
}
if(u!=v)
{
parent[v]=u;
ne=ne+1;
mincost=mincost+min;
System.out.print(+a);
System.out.print("------->");
System.out.print(+b);
System.out.print("------->");
System.out.println(+min);
}
c[a][b]=c[b][a]=999;
}
System.out.println("Mincost = "+mincost);
}
}
-:OUTPUT:-
2-------> 3 ------->1
5-------> 6 ------->2
1-------> 2 ------->3
5-------> 2 ------->4
1-------> 5 ------->5
Mincost = 15
9. Find Minimum Cost Spanning Tree of a given connected undirected graph using
Prim's algorithm :-
import java.util.Scanner;
public class Pgm9
{
public static void main(String args[])
{
int i,j,n;
int c[][]=new int[10][10];
System.out.println("Enter the number of vetices :-");
Scanner input=new Scanner(System.in);
n=input.nextInt();
System.out.println("Enter the cost adjacency matrix :-");
for(i=1;i<=n;i++)
{
for(j=1;j<=n;j++)
{
c[i][j]=input.nextInt();
prims(n,c);
}
public static void prims(int n,int c[][])
{
int ne,min,mincost;
int elec[]=new int[10];
int u=0,v=0,i,j;
mincost=0;
ne=0;
for(i=1;i<=n;i++)
{
elec[i]=0;
}
elec[1]=1;
while(ne!=n-1)
{
min=999;
for(i=1;i<=n;i++)
{
for(j=1;j<=n;j++)
{
if(elec[i]==1)
{
if(c[i][j]<min)
{
min=c[i][j];
u=i;
v=j;
}
}
}
}
if(elec[v]==0)
{
elec[v]=1;
ne=ne+1;
mincost=mincost+min;
System.out.print(u+"------> "+v);
System.out.println(" ------> "+min);
}
c[u][v]=c[v][u];
c[v][u]=999;
}
System.out.println("Mincost = "+mincost);
}
}
-:OUTPUT:-
1------> 2 ------> 3
2------> 3 ------> 1
2------> 5 ------> 4
5------> 6 ------> 2
5------> 4 ------> 5
Mincost = 15
Assistant Professor Dept of Cs, Govt Engineering Clg, KR Pete Page 100
Design & Analysis of Algorithm Lab Manual (15CSL47) 2017
import java.util.Scanner;
public class Pgm10
{
public static void main(String[] args)
{
int c[][]=new int [10][10];
int i,j,n;
System.out.println("Enter the number of vertices :-");
Scanner input=new Scanner(System.in);
n=input.nextInt();
System.out.println("Enter the adjacency matrix are :-");
for(i=1;i<=n;i++)
{
for(j=1;j<=n;j++)
{
c[i][j]=input.nextInt();
}
}
System.out.println("All pairs shortest path distance matrix :-");
floyd(c,n);
for(i=1;i<=n;i++)
{
for(j=1;j<=n;j++)
{
System.out.print(c[i][j]+"\t");
}
System.out.println();
}
}
public static void floyd(int D[][],int n)
{
int i,j,k;
for(k=1;k<=n;k++)
{
for(i=1;i<=n;i++)
{
for(j=1;j<=n;j++)
{
D[i][j]=min(D[i][j],D[i][k]+D[k][j]);
}
Assistant Professor Dept of Cs, Govt Engineering Clg, KR Pete Page 101
Design & Analysis of Algorithm Lab Manual (15CSL47) 2017
}
}
}
public static int min(int x,int y)
{
if(x<y)
return x;
else
return y;
}
}
-:OUTPUT:-
Assistant Professor Dept of Cs, Govt Engineering Clg, KR Pete Page 102
Design & Analysis of Algorithm Lab Manual (15CSL47) 2017
import java.util.*;
class TSP
{
int weight[][],n,tour[],finalCost;
final int INF=999;
public TSP()
{
Scanner s=new Scanner(System.in);
System.out.println("Enter number of nodes:=>");
n = s.nextInt();
weight=new int[n][n];
tour=new int[n-1];
for(int i=0;i<n;i++)
{
for(int j=0;j<n;j++)
{
if(i!=j)
{
System.out.print("Enter weight of "+(i+1)+" to
"+(j+1)+":=>");
weight[i][j]=s.nextInt();
}
}
}
System.out.println();
System.out.println("Starting node assumed to be node 1.");
eval();
}
public int COST(int currentNode,int inputSet[],int setSize)
{
if(setSize==0)
return weight[currentNode][0];
int min=INF,minindex=0;
int setToBePassedOnToNextCallOfCOST[] = new int[n-1];
for(int i=0;i<setSize;i++){
int k=0;//initialise new set
for(int j=0;j<setSize;j++){
if(inputSet[i]!=inputSet[j])
setToBePassedOnToNextCallOfCOST[k++]=inputSet[j];
}
int temp=COST(inputSet[i],setToBePassedOnToNextCallOfCOST,setSize-1);
Assistant Professor Dept of Cs, Govt Engineering Clg, KR Pete Page 103
Design & Analysis of Algorithm Lab Manual (15CSL47) 2017
setToBePassedOnToNextCallOfCOST[k++]=inputSet[j];
}
int temp=COST(inputSet[i],setToBePassedOnToNextCallOfCOST,setSize-1);
if((weight[currentNode][inputSet[i]]+temp) < min)
{
min=weight[currentNode][inputSet[i]]+temp;
minindex=inputSet[i];
}
}
return minindex;
}
public void eval()
{
int dummySet[]=new int[n-1];
for(int i=1;i<n;i++)
dummySet[i-1]=i;
finalCost = COST(0,dummySet,n-1);
constructTour();
}
public void constructTour()
{
int previousSet[]=new int[n-1];
int nextSet[]=new int[n-2];
for(int i=1;i<n;i++)
Assistant Professor Dept of Cs, Govt Engineering Clg, KR Pete Page 104
Design & Analysis of Algorithm Lab Manual (15CSL47) 2017
previousSet[i-1]=i;
int setSize=n-1;
tour[0]=MIN(0,previousSet,setSize);
for(int i=1;i<n-1;i++)
{
int k=0;
for(int j=0;j<setSize;j++)
{
if(tour[i-1]!=previousSet[j])
nextSet[k++]=previousSet[j];
}
--setSize;
tour[i]=MIN(tour[i-1],nextSet,setSize);
for(int j=0;j<setSize;j++)
previousSet[j]=nextSet[j];
}
display();
}
public void display()
{
System.out.println();
System.out.print("The Tour is 1-");
for(int i=0;i<n-1;i++)
System.out.print((tour[i]+1)+"-");
System.out.print("1");
System.out.println();
System.out.println("The Final Cost is "+finalCost);
}
}
class Pgm10b
{
public static void main(String args[])
{
TSP obj=new TSP();
}
}
Assistant Professor Dept of Cs, Govt Engineering Clg, KR Pete Page 105
Design & Analysis of Algorithm Lab Manual (15CSL47) 2017
-:OUTPUT:-
Assistant Professor Dept of Cs, Govt Engineering Clg, KR Pete Page 106
Design & Analysis of Algorithm Lab Manual (15CSL47) 2017
11. Design and implement in Java to find a subset of a given set S = {Sl,
S2,.....,Sn} of n positive integers whose SUM is equal to a given positive
integer d. For example, if S ={1, 2, 5, 6, 8} and d= 9, there are two
solutions {1,2,6}and {1,8}. Display a suitable message, if the given
problem instance doesn't have a solution :-
import java.util.*;
public class Pgm_11
{
static int n,x[]=new int[10],w[]=new int[10];
static int d,i,count=0;
public static void main(String[] args)
{
int sum=0;
System.out.println("Enter the value of n :-");
Scanner sc=new Scanner(System.in);
n=sc.nextInt();
System.out.println("Enter the Elements :-");
for(i=1;i<=n;i++)
{
w[i]=sc.nextInt();
}
System.out.println("Enter the value of d:- ");
d=sc.nextInt();
for(i=1;i<=n;i++)
{
x[i]=0;
}
for(i=1;i<=n;i++)
{
sum=sum+w[i];
}
if(d>sum)
{
System.out.println("No solution");
}
else
{
subset(0,1,sum);
if(count==0)
{
System.out.println("No solution");
}
Assistant Professor Dept of Cs, Govt Engineering Clg, KR Pete Page 107
Design & Analysis of Algorithm Lab Manual (15CSL47) 2017
}
}
public static void subset(int s,int k,int u)
{
int i;
x[k]=1;
if(s+w[k]==d)
{
count++;
System.out.println("subset"+count);
for(i=1;i<=k;i++)
{
if(x[i]==1)
{
System.out.println(w[i]);
}
}
System.out.println();
}
else if(s+w[k]+w[k+1]<=d)
{
subset(s+w[k],k+1,u-w[k]);
}
if(s+u-w[k]>=d)
{
x[k]=0;
subset(s,k+1,u-w[k]);
}
}
}
Assistant Professor Dept of Cs, Govt Engineering Clg, KR Pete Page 108
Design & Analysis of Algorithm Lab Manual (15CSL47) 2017
-:OUTPUT:-
subset1
1
2
6
subset2
1
8
Assistant Professor Dept of Cs, Govt Engineering Clg, KR Pete Page 109