1answer.
Ask question
Login Signup
Ask question
All categories
  • English
  • Mathematics
  • Social Studies
  • Business
  • History
  • Health
  • Geography
  • Biology
  • Physics
  • Chemistry
  • Computers and Technology
  • Arts
  • World Languages
  • Spanish
  • French
  • German
  • Advanced Placement (AP)
  • SAT
  • Medicine
  • Law
  • Engineering
NISA [10]
4 years ago
12

There are n tasks to complete. Each task first needs to be preprocessed on a supercomputer and then finished on one of n process

ors. Task i requires pi seconds of preprocessing on the supercomputer followed by fi seconds on some processor to complete. Note that tasks are fed to the supercomputer sequentially but can be executed in parallel on different processors once they have been preprocessed. The process terminates when all tasks have been completed. The duration of the process is the total time until termination. Give an efficient algorithm that determines an ordering of the tasks for the supercomputer that minimizes the duration of the process, as well as the minimum duration.
Computers and Technology
1 answer:
evablogger [386]4 years ago
7 0

Answer:

#include<bits/stdc++.h>

using namespace std;

typedef long long ll;

int main()

{

ll i,n,j,s;

cout<<"Enter size of array: ";

cin>>n;

ll a[n];

cout<<"Enter elements of array: ";

s=0;

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

{

cin>>a[i];

s+=a[i];

}

if(s%3!=0)

{

cout<<"No";

return 0;

}

ll dp[n][s/3+1];

for(i=0;i<=s/3;i++)

{

if(i==a[0])

dp[0][i]=1;

else

dp[0][i]=0;

}

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

dp[i][0]=1;

for(i=1;i<n;i++)

for(j=0;j<=s/3;j++)

{

if(j<a[i])

dp[i][j]=dp[i-1][j];

else

dp[i][j]=dp[i-1][j]||dp[i-1][j-a[i]];

}

if(dp[n-1][s/3]==0)

{

cout<<"No";

return 0;

}

ll vis[n];

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

vis[i]=0;

ll curr=s/3;

ll indx=n-1;

ll c=0;

while(indx>0)

{

if(dp[indx][curr]==1&&(curr-a[indx]>=0&&dp[indx-1][curr-a[indx]]==1))//include indx

{

vis[indx]=1;

curr=curr-a[indx];

c++;

}

indx--;

}

if(dp[0][curr]==1){

vis[0]=1;

c++;}

ll b[n-c];

ll k=0;

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

{

if(vis[i]==0)

b[k++]=a[i];

}

ll dp1[k][s/3+1];

for(i=0;i<=s/3;i++)

{

if(i==b[0])

dp1[0][i]=1;

else

dp1[0][i]=0;

}

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

dp1[i][0]=1;

for(i=1;i<k;i++)

for(j=0;j<=s/3;j++)

{

if(j<b[i])

dp1[i][j]=dp1[i-1][j];

else

dp1[i][j]=dp1[i-1][j]||dp1[i-1][j-b[i]];

}

if(dp1[k-1][s/3]==0)

{

cout<<"No";

return 0;

}

else

cout<<"Yes";

}

Explanation:

You might be interested in
Suppose you want to write a program that will read a list of numbers from a user, place them into an array and then compute thei
djyliett [7]

Answer:

The size of the array is dependent on the amount of memory the program can access.

Explanation:

Here according to the question the user is in need of memory space equal to the amount of numbers read from the list. So the size of the array should be equal to the total numbers read from the list. if the user reads 5 number from the list then the size of the array should be int a[5] if the numbers are integers. Wastage of memory space is not appreciated in a good piece of code.

6 0
3 years ago
You are going to create an Arduino sketch where you have two push buttons, one piezo, one
Elanso [62]

Answer:

asw

Explanation:

4 0
3 years ago
6 external parts or peripherals of a computer system and identify which are output and which are input devices.
djverab [1.8K]
A computer peripheral, or peripheral device, is an external object that provides input and output for the computer. Some common input devices include:

keyboard
mouse
touch screen
pen tablet
joystick
MIDI keyboard
scanner
digital camera
microphone
<span>
Some common Output Devices : 
</span>monitor
projector
TV screen
printer
plotter
<span>speakers</span>
3 0
3 years ago
Listening to the audience refers to what in the context of slide presentations
Anit [1.1K]

Answer: D

Explanation: This concept refers to listening for various cues, such as confusion, interest, or boredom.

8 0
3 years ago
Read 2 more answers
Which Creative Commons license type allows others to use and build upon work non-commercially, provided that they credit origina
Vera_Pavlovna [14]

Answer:

Creative Commons license type allows others to use and build upon work non-commercially, provided that they credit original author and maintain the same licensing is described below in detail.

Explanation:

Attribution-Non financially-ShareAlike

This permission lets others adapt, remix, and develop upon your work non-financially, as long as they charge you and license their new inventions under identical times. There are six separate license classes, scheduled from most to least licensed. the material in any mechanism or arrangement, so long as attribution is given to the originator.

8 0
3 years ago
Other questions:
  • Tyler trades in a car worth $5,000 (wholesale) on a new $15,000 car, but still owes $7,000 on his old car. How much will he owe
    12·1 answer
  • JAVA
    13·1 answer
  • Choose the answer. Janice's IT department found that her computer had a program on it that was collecting her personal informati
    5·1 answer
  • You just got a call from the University system administrator, who says that either you or your roommate is issuing denial-of-ser
    8·1 answer
  • The distance between two walls is called what?
    8·2 answers
  • One benefit proprietary licensed software is that it
    9·1 answer
  • The core of ___________ is the implementation of intrusion detection systems and intrusion prevention systems at entry points to
    8·1 answer
  • Activities provided for the satisfaction of others and consumed at the time of purchase<br> are…
    6·1 answer
  • CAN SOMEONE PLEASE HELP ME WRITE AN INTRODUCTION ??? COMMENT FOR TOPIC
    11·1 answer
  • It's in Python, everything sort of explained in the image below,
    5·1 answer
Add answer
Login
Not registered? Fast signup
Signup
Login Signup
Ask question!