CF538G

技术CF538G CF538G不知道在哪里找到的题,感觉评不到黑,不过是 Good Tea.首先了解将坐标系翻转 $45^{\circ}$ 的 trick ,对于每个坐标 $(x,y)$,翻转后的坐标为

CF538G

我不知道我在哪里找到这个问题的,但我不认为它是黑色的。只是好茶。

首先,了解将坐标系翻转45美元的技巧。对于$(x,y)$,翻转的坐标是$(x,y,x-y)$。这样,$x$和$y$的坐标相互独立,不会有关联。

在我知道这些之后,我实际上想出了一个\*3100。

考虑如果没有周期怎么办。我们按时间对所有的限制进行排序,只有当每个坐标轴上$i-1$到$i$的距离为$\leq t_i-t_{i-1}$,并且距离和时间的奇偶性相同时,$i$ th限制才能满足。

显然,宇称与周期无关,可以先分开判断,只需要考虑有周期时的距离限制。

对于每一个$t$,我们可以用$ t=k \乘以l r$的形式来表示,这意味着我们已经完成了$k$个完整的循环,并且在最新的循环中达到了$r$ th。我们假设一个完整周期的位移是$(X,Y)$显然,如果不止一个$r$是相同的,那么$(X,Y)$就可以确定。

对于其余的情况,显然有公式$ (p _ {r},q _ r)=(x _ i,y _ I)-k \u次(x,y) $上一句中的$ p _ r $和$ q _ r $表示$0$次和$r$的位置。对于两个相邻的$r$ $i$和$i'$,我们可以列出不等式$ (p _ r,q _ r)-(p _ {r'},q _ {r'}) \ leqt _ I-t _ {I'} $,并通过代换得到一些。

在得到$(X,Y)$的范围后,可以构造任意一组* *奇偶性* *。我们按照$r$从小到大逐一构造,因为两点的距离和时间是确定的,所以可以确定1$和$-1$的多少。

这个问题的思路挺新鲜的,主要是代码写起来比较麻烦。

为了方便起见,可以添加一组限制。当$t=0$,坐标为$(x,y)=(0,0)$。

同时要注意不平等的向上舍入和向下舍入问题。

` `` cpp

#includebits/stdc。h

#定义服务点系统(“暂停”)

使用命名空间标准;

typedef long long lld

const int maxn=2e6 800

const lld INF=2e6

int n,m;int hook=0;

结构节点{lld t,k,r,x,y;} q[2*maxn],fin

bool运算符(节点a,节点b){ return a . Rb . r;}

bool运算符==(节点a,节点b){ return(a . x==b . xa . y==b . y);}

节点mi(节点a,lld k,节点b)

{return (node){a.t,a.k,a.r,a.x-k*b.x,a . y-k * b . y };}

void EFS(){ printf(' NO \ n ');退出(0);}

lld xl=-INF,xr=INF,yl=-INF,yr=INF

lld d1v(lld a,lld b){ return((a0a % b)a/B- 1: a/b);}

//去掉整体

int mx[maxn],my[maxn],sx[maxn],sy[maxn];

lld nev(lld x){ return(x % 2x 1: x);}//下一晚上

lld neo(lld x){ return(x % 2x : x 1);}//下一个奇数

char ssh(int x,int y)

{

if(x==1y==1)返回‘R’;

if(x==1y==-1)返回‘U’;

if(x==-1y==1)返回‘D’;

if(x==-1y==-1)返回' L ';

返回0;

}

Void求解(lld a,lld b,lld典型值)//ax=b形式的不等式

{

if(!ab0)EFS();

else if(!a)返回;

lld l=-INF,r=INF

if(a0) r=d1v(b,a);

else l=-d1v(b,-a);

if(!典型值)xl=最大值(xl,l),xr=最小值(xr,r);

否则yl=max(yl,l),yr=min(yr,r);

if(xlxr | | ylyr)EFS();

}

void costr()

{

for(int I=1;I=n;(一)

q[i]=mi(q[i],q[i]。k,fin);

q[n1]=fin;

//随便写结构。

for(int I=2;I=n ^ 1;(一)

{

int lp=q[i-1]。r 1,RP=(I=NQ[I]. r :m);

for(int j=q[i-1])。R1;j=rpj)

{

if(j-lp 1=abs(q[i])。x-q[i-1]。x))

mx[j]=(q[i]。xq[i-1]。x 1:-1);

else MX[j]=(j % 2 1:-1);

if(j-lp 1=abs(q[i])。y-q[i-1]。y))

我的[j]=(q[i]。yq[i-1]。y 1:-1);

否则我的[j]=(j % 2 1:-1);

}

}

for(int I=1;I=m;(一)

printf('%c ',ssh(mx[i],my[I]);

printf(' \ n ');

退出(0);

}

int main()

{

freopen('CF538G.in ',' r ',stdin);

scanf('%d%d ',n,m);n;

q[1]=(节点){0ll,0ll,0ll,0ll,0ll };

for(int I=2;I=n;(一)

{

lld t,x,y;scanf('%lld%lld%lld ',t,x,y);

q[i]=(节点){t,t/m,t%m,x y,x-y };

}

for(int I=2;I=n;(一)

{

lld dx=(q[i]。x-q[i-1]。x)% 2;dx=(dx0-dx : dx);

lld dy=(q[i]。y-q[i-1]。y)% 2;dy=(dy0-dy: dy);

lld dt=(q[i]。t-q[i-1]。t)% 2;dt=(dt0-dt : dt);

if(dx!=dt||dy!=dt)EFS();

}

排序(q 1,qn1);

int FID=0;

for(int I=2;I=n;(一)

{

lld dk=-q[i]。k q[i-1]。k,dt=q[i]。r-q[i-1]。r;

lld dx=q[i]。x-q[i-1]。x,dy=q[i]。y-q[i-1]。y;

if(q[i]。r==q[i-1]。r)

{

节点fcx=(节点){0,0,0,q[i]。x-q[i-1]。x,q[i]。y-q[i-1]。y };

if % 28 fcx。x % ABS % 28 dk % 29% 21% 3d % 7c % 7 CFC x . y % 28 dk % 29% 21% 3d % 29% 20 EFS % 28% 29% 3b % 20% 0a % 20 fcx。x % 2f % 28-dk % 29% 2 CFC。y % 2f % 3d % 28-dk % 29% 3b % 0a % 20 if % 28% 21 FID % 29% 20% 7 bfin % 3 dfx

内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/153038.html

(0)

相关推荐

  • hexo本地项目迁移(更换文件夹)

    技术hexo本地项目迁移(更换文件夹) hexo本地项目迁移(更换文件夹)有时候, 我们可能需要将本地hexo博客项目备份, 或者将本地项目换个文件夹.
    但是如果我们直接将文件夹移动位置时会发现移动后输

    礼包 2021年12月21日
  • 调整查询代价的数据库PostgreSQL怎么用

    技术调整查询代价的数据库PostgreSQL怎么用这篇文章将为大家详细讲解有关调整查询代价的数据库PostgreSQL怎么用,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。

    攻略 2021年12月1日
  • 正则化 Regularization

    技术正则化 Regularization 正则化 Regularization什么是正则化
    凡是减少泛化误差(而不是训练误差)的方法都可以称作正则化
    换句话说,也就是减小过拟合的方法
    范数 Norm
    L

    礼包 2021年10月28日
  • 班门弄斧的主人公是谁,谁有《班门弄斧》的释字和翻译

    技术班门弄斧的主人公是谁,谁有《班门弄斧》的释字和翻译释义班:鲁班班门弄斧的主人公是谁,春秋时期鲁国人,著名的木匠。在鲁班门前舞弄斧子。
    比喻在行家面前卖弄本领,不自量力。
    出处唐·柳宗元《王氏伯仲唱和诗序》:“操斧于班

    生活 2021年10月25日
  • Android消息机制Handler用法有哪些

    技术Android消息机制Handler用法有哪些这篇文章主要讲解了“Android消息机制Handler用法有哪些”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Andr

    攻略 2021年11月30日
  • 怎么解析IE6,IE7浏览器兼容性问题

    技术怎么解析IE6,IE7浏览器兼容性问题这篇文章将为大家详细讲解有关怎么解析IE6,IE7浏览器兼容性问题,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。向大家描述一下I

    攻略 2021年11月25日