警示后人
查看原帖
警示后人
399150
ShunpowerSHUN理成张楼主2023/3/11 11:41

cout 输出 long double 只有默认五位小数。然而这题精度要求显然不止(可能是 10910^{-9}),这种问题又只会 WA 一个点(而且是最后一个叫 s1.txt 的没有放在题面里的 sample 测试点),导致我看了非常久的 corner……

请使用:

cout.setf(ios::fixed);
cout<<setprecision(9)<<ans<<endl;

此外,本题每次挑选“选后浓度最大的盐水”贪心是错的,然而能通过全部测试点。下面是一种 hack 数据:

input:
10 6
2 27
2 27
2 90
1 29
3 18
2 3
2 19
1 19
3 45
1 11

output:
42.818181818
2023/3/11 11:41
加载中...