Skip to content

Instantly share code, notes, and snippets.

@linggom
Created September 4, 2014 04:44
Show Gist options
  • Save linggom/4f3069210c74a3bbfd90 to your computer and use it in GitHub Desktop.
Save linggom/4f3069210c74a3bbfd90 to your computer and use it in GitHub Desktop.
public double findSuitableDensity(int[] v, int[] w) {
int s=v.length;
double[] d= new double[s];
for(int i=0; i<s; i++){
d[i]=(double)w[i]/(double)v[i];
}
double minDS=0.0;
boolean first=true;
for(int ii=0; ii<s; ii++){
double[] newW= new double[s];
for(int i=0; i<s; i++){
newW[i]=(double)d[ii] * (double)v[i];
}
double diffSum=0.0;
for(int i=0; i<s; i++){
diffSum+=Math.abs((double)newW[i]-(double)w[i]);
}
if(first){
minDS=diffSum;
first=false;
}else{
if(diffSum<minDS)
minDS=diffSum;
}
}
return minDS;
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment