HOJ 12983 Integer Estate Agent(搜索优化)
来源:互联网 发布:李圣杰为什么不红 知乎 编辑:程序博客网 时间:2024/06/09 12:36
题意是说给你一个数n,它可能是一些连续的整数串的和(整数最小是2),求对于每一个n,这样的串有多少个。
太年轻了,对于每一个n都去枚举串的长度,一直TLE,做了读入优化,记忆化搜索也不管用,后来看了另外一个妹子的代码才发现,应该先打一次表,但是姿势略有不同。先枚举串的长度,接着枚举串的起始点,然后用公式计算出值,在合法范围内就给该位置加一。对于每一个内循环,值超过最大值就跳出。
#include <iostream>#include <stdlib.h>#include <stdio.h>#include <string.h>#include <math.h>using namespace std;const int maxn = 1e6 + 10;int ans[maxn];template <class T>char scanf(T *argu){ char ch = getchar(); (*argu) = 0; while(ch > '9' || ch < '0') { if(ch == EOF) return ch; ch = getchar(); } while(ch >= '0' && ch <= '9') { (*argu) *= 10; (*argu) += ch - '0'; ch = getchar(); } return ch;}void init(){memset(ans, 0, sizeof(ans));int mt = 2 * sqrt(maxn) + 1;long long sum;for(int t = 1; t < mt; t++){for(int x = 1; x < maxn; x++){sum = x * t + t * (t + 1) / 2;if(sum > 1e6)break;elseans[sum]++;}}}int main(){ int n; init(); while(scanf(&n) && n) printf("%d\n", ans[n]); return 0;}
0 0
- HOJ 12983 Integer Estate Agent(搜索优化)
- HOJ Grandpa's Other Estate——(离散化思想的复习)
- HOJ 1019 Grandpa's Other Estate
- 搜索(IDA*)HOJ The Rotation Game
- 搜索(bfs) HOJ 1448 Dungeon Master
- (简单)搜索 HOJ 1022 Spacecraft Malfunction
- (简单)搜索 HOJ 1030 Labyrinth
- (简单) 搜索 HOJ 1044 Transportation
- (简单) 搜索 HOJ 1048 Cipher
- (简单)搜索 HOJ 1070 Word
- (简单)搜索 HOJ 1075 The Castle
- 搜索(水) HOJ 1870 Race
- (简单) 不需要算法 HOJ 1019 Grandpa\'s Other Estate
- 搜索 HOJ 1629 Safecracker
- 搜索 HOJ 1394 Shortcut
- 搜索 HOJ 1136 Robbery
- (中等) 动态规划+搜索 HOJ 2156 Colored stones
- (简单)搜索 HOJ 1692 Choose Your Own Adventure
- Phabricator 实践之安装
- crontab命令
- Java调用bat文件 以及相关dos 命令
- poj-3318(矩阵 随机化)
- java使用cxf webservice
- HOJ 12983 Integer Estate Agent(搜索优化)
- UE4编码规范
- 我是刘洪蕾,我爱java,我也爱编程
- OpenCV图像视频处理函数
- 《unix环境高级编程》 读书笔记 目录
- 曾经到一个电子商务网站的项目,让我总结了一些不足
- STL algorithm算法merge(34)
- oracle跨库查询的方法
- C++名称粉碎