题目名称 | 1396. w函数 |
---|---|
输入输出 | wwww.in/out |
难度等级 | ★☆ |
时间限制 | 1000 ms (1 s) |
内存限制 | 256 MiB |
测试数据 | 4 |
题目来源 | yuan 于2013-08-21加入 |
开放分组 | 全部用户 |
提交状态 | |
分类标签 | |
分享题解 |
通过:103, 提交:425, 通过率:24.24% | ||||
HeHe | 100 | 0.000 s | 0.00 MiB | C++ |
张铭哲 | 100 | 0.001 s | 0.20 MiB | Pascal |
苏轼 | 100 | 0.001 s | 0.20 MiB | Pascal |
Alan | 100 | 0.001 s | 0.20 MiB | Pascal |
bhiaibogf | 100 | 0.001 s | 0.20 MiB | Pascal |
前无古人 | 100 | 0.001 s | 0.20 MiB | Pascal |
卍 | 100 | 0.001 s | 0.20 MiB | Pascal |
丿Mht丶闪电 | 100 | 0.001 s | 0.20 MiB | Pascal |
Ostmbh | 100 | 0.001 s | 0.26 MiB | C++ |
woca | 100 | 0.001 s | 0.31 MiB | C++ |
关于 w函数 的近10条评论(全部评论) | ||||
---|---|---|---|---|
回复 @GaoErFu : 可以试一试记忆化搜索。
+1s
2017-10-27 20:23
12楼
| ||||
有的测试数据貌似有规律,好像是算2的多次幂,但是有的测试数据规律找不到,直接递归又超时,究竟怎么写呀?
| ||||
-1 -1 -1 神坑测试数据
ch3coooh
2014-03-14 19:29
10楼
| ||||
这题是我第一次想要怒粘代码
Letter zZZz
2014-02-03 14:49
9楼
| ||||
以后数据能不能别这么坑了。。。
| ||||
我来修正数据,对不起打表党们了==
超级傲娇的AC酱
2013-10-17 19:49
7楼
| ||||
标程用的整形变量范围过小,导致遇到2222222这样的数时直接超范围转成了一个负数,所以答案就变成1了。。。。
| ||||
大家都打表,我直接打表一次过hiahia
Strawberry
2013-10-14 20:40
5楼
| ||||
太逗了,明明C++中a,b,c不是long的长度而是short,不过用short无法读入大数,pascal却可以……c++打表党飘过
| ||||
1048576?
这题错了? 不要做了。
ranto
2013-09-22 20:22
3楼
|
对于一个递归函数w(a,b,c)
如果 a<=0 或者 b<=0 或者 c<=0 就返回1. 否则
如果 a>20 或者 b>20 或者 c>20 就返回w(20,20,20) 否则
如果 a<b 并且 b<c 就返回w(a,b,c-1)+w(a,b-1,c-1)-w(a,b-1,c) 否则
返回w(a-1,b,c)+w(a-1,b-1,c)+w(a-1,b,c-1)-w(a-1,b-1,c-1)
这是个简单的递归函数,但实现起来可能会有些问题。某些a、b、c的值会使函数运行时间无法忍受。
输入文件有n+1(0<=n<=10000)行,第i(1<=i<=n)行有三个整数ai,bi,ci(保证在pascal的longint 或 C/C++的long范围内)。
第n+1行必定是-1 -1 -1(同时保证其他行不会是-1 -1 -1)。
输出文件有n行,第i行输出w(ai,bi,ci)的值(保证在pascal的int64 或 C/C++的long long范围内)。
1 1 1 2 2 2 -1 -1 -1
2 4
输出的第一行是w(1,1,1),输出的第2行是w(2,2,2)。
题目提供者邮箱:darkgodz@qq.com(感谢题目提供者对COGS评测系统的支持)