UVA 12627 - Erratic Expansion
2015-09-08 17:05
429 查看
#include <iostream> #include <algorithm> #include <cstdio> #include <cstdlib> #include <cstring> using namespace std; const int INF = 0x7fffffff; int T; long long my_pow(long long a, long long n) { long long res = 1; for(int i = 0; i < n; ++i) res *= a; return res; } long long dfs(long long k, long long c) { if(c == 0) return 0LL; if(k == 0) return 1LL; if(c >= my_pow(2, k-1)) return 2 * dfs(k-1, c - my_pow(2, k-1)) + my_pow(3, k - 1); else return dfs(k-1, c); } int main() { scanf("%d", &T); int CASE = 0; while(T--) { long long k, a, b; scanf("%lld%lld%lld", &k, &a, &b); printf("Case %d: %lld\n", ++CASE, dfs(k, (1 << k) - a + 1) - dfs(k, (1 << k) - b)); } return 0; }因为long long 的问题错了好多次。。3^29会爆int,需要注意
相关文章推荐
- struts自动赋值
- 填坑吧,模板君
- Eclipse的java代码出错:The import org.apache cannot be resolved
- A problem of sorting----(BestCoder Round #54 (div.2))
- 使用 SO_KEEPALIVE 选项检测TCP连接
- mysql 触发器的使用 FOR INSERT,DELETE,UPDATE
- C#前后台线程
- Binary Tree Level Order Traversal
- Java 条件表达式结果类型不一致问题
- 一次简单的接口编程,使用socket通信
- 零基础学python-12.6 使用for和zip来并行使用多个序列
- 笔记-大话设计模式-14 观察者模式
- Clr Via C#读书笔记---I/O限制的异步操作
- 零基础学python-12.6 使用for和zip来并行使用多个序列
- ASP.NET - 多级分类
- Linux源码安装python3.2.1 并修改默认脚本文件
- Algorithms—133.Balanced Binary Tree
- 使用tshark监视和检查网络流量
- 一个解除TCP连接的TIME_WAIT状态限制的简便方法
- 【leetcode】Majority Element II,Majority element algorithm