197 条题解
-
0hitmiss LV 3 @ 2006-10-21 21:46:20
初看数据规模,直接上枚举(就是TMD的暴力硬搜),肯定不TLE。。。
for i:=-100000 to 100000 do
begin
j:=i/1000;
if ... -
02006-10-19 19:23:27@
晕。。郁闷。。我用二分做的
20分钟才AC
同学直接
FOR i:=-10000 to 10000 do
BEGIN j:=i/100; ....... END;
枚举。。5min。。搞定 周围果然有很多大牛啊。。汗 -
02006-10-18 19:09:58@
输入数据可以是小数!
样例:
1 1 -2 -1 2 -1.00 1.00 2.00
2 1 -4.65 2.25 1.4 -0.35 1.00 4.00
3 1 10 -1 -10 -10.00 -1.00 1.00
4 1 -1.8 -8.59 -0.84 -2.10 -0.10 4.00 -
02006-10-11 19:09:48@
好容易才过,555...
-
02006-10-09 21:15:57@
列举然后求解就好了。。。
10000 个数据而已 -
02006-10-05 11:23:19@
编译通过...
├ 测试数据 01:答案正确... 0ms
├ 测试数据 02:答案正确... 0ms
├ 测试数据 03:答案正确... 0ms
├ 测试数据 04:答案正确... 0ms
---|---|---|---|---|---|---|---|-
Accepted 有效得分:100 有效耗时:0ms -
02006-09-30 17:52:59@
很EASY的。o(10000)暴力解决0ms。
硬搜AC!
另外不需要用if (f(x1)*f(x2)0)xor(f(x2)>0) 来判断,快多了。
-
02006-09-30 10:17:33@
x扩大100倍以后枚举
-
02006-09-20 17:19:31@
x=(-(q/2)-((q/2)^2+(p/3)^3)^(1/2))^(1/3)+(-(q/2)+((q/2)^2+(p/3)^3)^(1/2))^(1/3)
-
02006-09-03 16:39:47@
编译通过...
├ 测试数据 01:答案正确... 0ms
├ 测试数据 02:答案正确... 0ms
├ 测试数据 03:答案正确... 0ms
├ 测试数据 04:答案正确... 0ms
---|---|---|---|---|---|---|---|-
Accepted 有效得分:100 有效耗时:0ms -
02006-08-26 15:29:19@
这是一道经典的老题,我看过的参考书上有很多解法。二分法,穷举法都很好,但介于这道题的数据规模和题中的条件,我有个自认为还算要简单一些的算发。
大体思路还是穷举,因为题中要求保留两位小数,可以看成把原数*100的整数,这样就可以避免实数的误差,所以组织循环for i:=-10000 to 10000 do.例外题中还说两个根的差>=1 可以每找到一个根就、从此根+100循环,这样又可以节约点时间,但这道题数据太弱-100到100,简直不用优化~~~~~ -
02006-08-09 18:06:14@
其实不用二分,我直接循环就AC了
-
02006-07-26 17:05:37@
给一直摔交的朋友一点建议
在free pascal 或者 turbo里面 循环变量是可以累加的
但是如果放到 vijos 的编译器中却是不可以累加 -
02006-07-22 16:55:00@
二分啊
1 确定方程的根的区间啊
2 求根啊 -
02006-05-31 20:51:46@
枚举就AC了
不过标准算法是分治 -
02006-05-06 02:56:02@
搜索,也就10000个点 我0ms AC
要小心四舍五入的情况
比如
假设
f(50.17)=-0.12
f(50.18)=+0.13由于|-0.12|
-
-12017-03-15 15:34:26@
#include<bits/stdc++.h> #define ll long long #define st string using namespace std; int a,b,c,d; int he(double x){ return ((a*x+b)*x+c)*x+d; } int main() { //freopen(".in","r",stdin); //freopen(".out","w",stdout); cin>>a>>b>>c>>d; for(double i=-100;i<=100;i+=0.01){ if(he(i)==0) printf("%.2f ",i); } return 0; }