题目链接:点击查看

题目大意:给出一个无限大小的二维平面坐标系,现在给出一系列数据点,给出的形式是给出(x[0],y[0]),再规定可以使用递推式x[i]=ax*x[i-1]+bx,y[i]=ay*y[i-1]+by,现在问,若给出起点为(sx,sy),可以进行上下左右的移动,每次移动消耗一次步数,问在步数不超过 k 次的情况下,最多能经过多少个数据点,注意一个数据点经过多次也只算一次

题目分析:这个题目有一个很关键的细节,就是ax和ay大于等于2,再加上步数小于等于1e16,在这两个条件的约束下,可以做出贡献的点数最多是小于64个的,因为2^64>1e18,这样一来我们就可以预处理出这60多个点,然后暴力,两层for循环确定起点和终点,每次走相邻两个点时的距离为其曼哈顿距离时可以保证最优,这样实时更新最大值就好了

有个比较麻烦的细节就是题目中的数据范围控制不好就会爆longlong,上面提到的,有贡献的点必须满足x和y小于等于一个limit,这个limit开大了开小了都会Wa,差不多2e16是可以AC的

代码:

#include<iostream>
#include<cstdio>
#include<string>
#include<ctime>
#include<cstring>
#include<algorithm>
#include<stack>
#include<queue>
#include<map>
#include<set>
#include<cmath>
#include<sstream>
#include<unordered_map>
using namespace std;typedef long long LL;const int inf=0x3f3f3f3f;const int N=1e5+100;const LL limit=2e16;struct Node
{LL x,y;Node(LL X,LL Y){x=X;y=Y;}
};LL dis(Node a,Node b)
{return llabs(a.x-b.x)+llabs(a.y-b.y);
}int main()
{
//  freopen("input.txt","r",stdin);
//  ios::sync_with_stdio(false);LL x0,y0,ax,ay,bx,by,xs,ys,t;cin>>x0>>y0>>ax>>ay>>bx>>by>>xs>>ys>>t;LL x=x0,y=y0;Node start=Node(xs,ys);vector<Node>node;while(x<=limit&&y<=limit){node.push_back(Node(x,y));x=x*ax+bx,y=y*ay+by;}int ans=0;for(int st=0;st<node.size();st++)for(int ed=0;ed<node.size();ed++)if(dis(node[st],node[ed])+dis(start,node[st])<=t)ans=max(ans,abs(st-ed)+1);printf("%d\n",ans);return 0;
}

CodeForces - 1293D Aroma's Search(暴力)相关推荐

  1. Codeforces Round #614 (Div. 2) D. Aroma‘s Search 暴力 + 思维

    传送门 文章目录 题意: 思路: 题意: 给你x0,y0,ax,ay,bx,byx_0,y_0,a_x,a_y,b_x,b_yx0​,y0​,ax​,ay​,bx​,by​,让后根据[ax∗xi−1+ ...

  2. Aroma's Search(暴力)

    THE SxPLAY & KIVΛ - 漂流 KIVΛ & Nikki Simmons - Perspectives With a new body, our idol Aroma W ...

  3. [ An Ac a Day ^_^ ] CodeForces 691F Couple Cover 花式暴力

    Couple Cover Time Limit: 3000MS   Memory Limit: 524288KB   64bit IO Format: %I64d & %I64u Descri ...

  4. Codeforces gym 100685 A. Ariel 暴力

    A. Ariel Time Limit: 20 Sec Memory Limit: 256 MB 题目连接 http://codeforces.com/gym/100685/problem/A Des ...

  5. Codeforces 460E Roland and Rose(暴力)

    题目链接:Codeforces 460E Roland and Rose 题目大意:在以原点为圆心,半径为R的局域内选择N个整数点,使得N个点中两两距离的平方和最大. 解题思路:R最大为30.那么事实 ...

  6. 枚举 ---- B. Power Sequence[Codeforces Round #666 (Div. 2)][暴力]

    B. Power Sequence 有 n 个数,现在要求将这个数列变成一个等比数列的形式 你可以将这 n 个数随意排列 或者将任意一个数加一或者减一操作,每次此类操作都要花费 1,问最少花费是多少 ...

  7. Codeforces 1138B Circus (构造方程+暴力)

    题意: 给你两个01串,要你选n/2个位置,使得选的位置在s1中"1"的数量等于未选的s2中"1"的数量 n<=5000,1s 思路: 设两个串中出现&q ...

  8. CodeForces - 1457D XOR-gun(位运算+暴力)

    题目链接:点击查看 题目大意:给出一个长度为 n 的非降序列,现在可以执行数次操作:选择相邻的两个位置将其替换成异或和,更具体的,每次操作可以选择一个位置 i ,满足 1 <= i < n ...

  9. CodeForces - 993C Careful Maneuvering(几何+暴力+状态压缩)

    题目链接:点击查看 题目大意:在 x = -100 的直线上有 n 个敌方飞船,在 x = 100 的直线上有 m 个敌方飞船,现在在 x = 0 的直线上可以选择两个点作为诱饵,使得两侧的飞船瞄准射 ...

最新文章

  1. html中js定义数组,javascript数组的定义及操作实例
  2. 3句话点评2020年看过的那些精彩的电影
  3. 微信小程序-开心大转盘(圆盘指针)代码分析
  4. Shell脚本攻略03-使用shell进行数学运算
  5. 2018 blockchain innovation final round of the chain valley
  6. html区块位置怎么设置,HTML 区块
  7. 作业帮电脑版在线使用_应届生应聘作业帮的在线辅导老师
  8. wordpress谷歌字体
  9. Strust2 本地化/国际化
  10. C# pictureBox显示图像 自动调整大小 缩放自适应 画图位置自适应
  11. 斯坦纳树算法概述及习题
  12. 最大公约数是啥意思_什么是最大公约数
  13. Windows入侵痕迹清理
  14. 小语种语音情感语料库的建立——论文阅读1
  15. java 字符串不等于_java如何对字符串进行不等于判断
  16. 跑步感到痛苦,试试超慢跑
  17. ARM汇编语言编程入门实践
  18. Web3融入现实就是去中心化Boss直聘
  19. ultraiso制作u盘启动盘教程图文详解
  20. kaggle和天池大数据比赛的区别

热门文章

  1. redis内存行数据库细节
  2. MySQL常见函数介绍
  3. 搭建自己的Docker Harbor
  4. 保存课程图片-服务端开发
  5. spring基于纯注解的声明式事务控制
  6. 函数的参数-列表使用+=本质上是调用extend方法
  7. 读写分离和负载均衡介绍
  8. 开闭原则coding
  9. jQuery版本的网页开关灯、jQuery版本网页开关灯的另一种写法
  10. 由若干计算机网络连接而成的网络,计算机网络复习大纲(中山大学)