Question

JAVA Bike shares are becoming increasingly common in cities in the United States. Commuters have been using bike sharing as a method of transportation for the flexibility, cost savings, exercise, and a myriad of other benefits. While being quite successful, many bike shares are still relatively new and have room for optimization. To help with the optimization process, we want to analyze bike share data from the city of Los Angeles. The first step of the process is to collect data from each bikeshare station. Now you are hired to visit the bikeshare stations (2<=N<=100,000) and collect data. All stations should be visited in sequence, where station 1 is the starting point and station N is the finish. You are supposed to visit all of these bikeshare stations one by one, but it is OK if you decide to skip one station in order make your whole travel distance shorter. You cannot skip bikestation 1 and N. Please design a program named BikeshareDistance.java and implement the following methods to find the minimum distance that you have to travel if you can skip up to one bikeshare station. public static long distance(String fileName) throws IOException This method returns the minimum distance that you have to travel stations (specified in the file) if can skip upto one bike station. public static long[] distance(String[] fileNames) throws IOException This method returns minimum travel distance corresponding to each file. For the data stored in the fileName(s), please refer to theInput File FormtSince the routes in a downtown area are set with a grid of streets, the distance between two bikeshare station at locations (x1, y1) and (x2, y2) is given by "Manhattan" distance, which is measured by |x1-x2| + |y1-y2|- the absolute difference in x plus the absolute difference in y. TheManhattandistance is based on the grid-like street geography of the New York borough of Manhattan. As shown in the following figure - Red: Manhattan distance. Green: diagonal, straight-line distance. Red, blue, yellow: equivalent Manhattan distances. Input file format: The first line contains a number N-total bikeshare stations, followed by N lines containing coordinates (x, y) of the N stations, both x and y are within the range of [-1000, 1000]. The bikeshare stations are given in the order that they should be checked. Some stations may be checked more than once at difference times in the predetermined sequence. If you skip such bikeshare station, you skip only one instance of the station--you DO NOT skip every visit at the same station. SAMPLE INPUT: 4 0 0 8 3 11 -1 10 0 The minimum distance traveled is 14.

Answer #1

*CODE:*

import java.util.*;

import java.lang.*;

import java.io.*;

class BikeshareDistance

{

public static long[] distance(String[] fileNames) throws
IOException

{

long[] ans=new
long[fileNames.length];//array to store the answers.

for(int
m=0;m<fileNames.length;m++)

{

//creates a file
scanner object.

Scanner scan=new
Scanner(new File(fileNames[m]));

int N;//number
of bike stations.

int i,j;//loop
variables.

long
distsum=0;

long min;//to
store te minimum distance.

N=scan.nextInt();

long[] x=new
long[N]; //array to store the x cordinate.

long[] y=new
long[N];//array to store y cordinate.

//loop to take
inputs.

for(i=0;i<N;i++)

{

x[i]=scan.nextLong();//taking x cordinate from
file.

y[i]=scan.nextLong();//taking y cordinate from
file.

}

//calculating
the total distance first.

for(j=0;j<N-1;j++)

{

distsum=distsum+Math.abs(x[j]-x[j+1])+Math.abs(y[j]-y[j+1]);//manhattan
distance.

} //calcualates
the total distance.

min=distsum;
//starts with maximum

for(i=1;i<N-1;i++)

{

//calculate all possible skips except 1 and
n

long tempdist=0,particular,temptotal;

for(j=i-1;j<i+1;j++)

{

//manhattan distance.

tempdist=tempdist+Math.abs(x[j]-x[j+1])+Math.abs(y[j]-y[j+1]);

}

particular =
Math.abs(x[i-1]-x[i+1])+Math.abs(y[i-1]-y[i+1]);//distance at
particular position.

temptotal=distsum-tempdist+particular; //this
calculates the total value if i th position is skipped

if(min>temptotal)

{

//minimum value is stored
here.

min=temptotal;

}

}

//minimum value
is stored in the answer.

ans[m]=min;

}

//returning answer

return ans;

}

public static void main(String []args) throws
IOException

{

String[] l={"input.txt"};//take the
strings of names of the inputs here.

long[] k=distance(l);//calling the
distance functioin and storing them in k array.

for(int
i=0;i<l.length;i++)

{

//printing the
output according to file.

System.out.println("The minimum distance of inputs in file "+l[i]+"
is : "+k[i]);

}

}

}

*CODE
ATTACHMENTS:*

*input.txt:*

*OUTPUT:*

I have done for the filenames.There you need to change the array names in the main method.

Then the distance method takes those strings and returns the answers.

**Please do comment for any queries.
PLease like it.
Thank You.**

Complete a Java program named ARMgr that maintains customer
accounts receivable in a database.
The code to initialize the CustomerAccountsDB database table and
add a set of customer accounts is provided.
Finish the code in these 3 methods in CustomerAccountDB.java to
update or query the database:
-purchase(double amountOfPurchase)
-payment(double amountOfPayment)
-getCustomerName()
Hint: For getCustomerName(), look at the getAccountBalance()
method to see an example of querying data from the database. For
the purchase() and payment() methods, look at the
addCustomerAccount() method...

please can you make it simple. For example using scanner or hard
coding when it is a good idea instead of arrays and that
stuff.Please just make one program (or class) and explain step by
step. Also it was given to me a txt.htm
1.- Write a client program and a server program
to implement the following simplified HTTP protocol based on TCP
service. Please make sure your program supports multiple clients.
The webpage file CS3700.htm is provided. You may...

ADVERTISEMENT

Get Answers For Free

Most questions answered within 1 hours.

ADVERTISEMENT

asked 24 minutes ago

asked 58 minutes ago

asked 1 hour ago

asked 1 hour ago

asked 2 hours ago

asked 2 hours ago

asked 2 hours ago

asked 2 hours ago

asked 2 hours ago

asked 2 hours ago

asked 3 hours ago

asked 3 hours ago