定义含绝对值的函数 ,其中 为由外部给定的正整数, 为整数。 现在,对于给定的 个含绝对值的函数,定义 ,求解 在区间 上的最小值。
区块链毕设网qklbishe.com为您提供问题的解答
定义含绝对值的函数 ,其中 为由外部给定的正整数, 为整数。
现在,对于给定的 个含绝对值的函数,定义 ,求解 在区间 上的最小值。
import java.util.*;
public class Main {
static class Fx {
int k, a, b;
Fx(int k, int a, int b) {
this.k = k;
this.a = a;
this.b = b;
}
}
static double f(Fx fx, double x) {
return Math.abs(fx.k * x + fx.a) + fx.b;
}
static double F(List<Fx> fxs, double x) {
double sum = 0;
for (Fx fx : fxs)
sum += f(fx, x);
return sum;
}
static void solve(BufferedReader br, BufferedWriter bw) throws IOException {
String[] parts = br.readLine().split(" ");
int n = Integer.parseInt(parts[0]);
double l = Double.parseDouble(parts[1]);
double r = Double.parseDouble(parts[2]);
List<Fx> fxs = new ArrayList<>();
for (int i = 0; i < n; ++i) {
parts = br.readLine().split(" ");
int k = Integer.parseInt(parts[0]);
int a = Integer.parseInt(parts[1]);
int b = Integer.parseInt(parts[2]);
fxs.add(new Fx(k, a, b));
}
while (r – l > 1e-7) {
double m1 = l + (r – l) / 3;
double m2 = r – (r – l) / 3;
if (F(fxs, m1) < F(fxs, m2))
r = m2;
else
l = m1;
}
bw.write(String.format("%.7fn", F(fxs, l)));
}
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out));
int __t = Integer.parseInt(br.readLine());
while (__t– > 0)
solve(br, bw);
bw.flush();
bw.close();
br.close();
}
}
以上就是关于问题定义含绝对值的函数 ,其中 为由外部给定的正整数, 为整数。
现在,对于给定的 个含绝对值的函数,定义 ,求解 在区间 上的最小值。的答案
欢迎关注区块链毕设网-
web3一级市场套利打新赚钱空投教程
区块链NFT链游项目方科学家脚本开发培训