- 前言
- A. Treasure Hunt
- Mycode
- B. Makes And The Product
- Mycode
- C. Really Big Numbers
- MyCode
- D.
- MyCode
传送门 :
A. Treasure Hunt观察题目给定的四个操作
首先是否能到达目的地 :
我们肯定要考虑 目的地 和 起点 他们之间是否 间隔整数倍 的值 (整数个 x , y x,y x,y
其次我们在模拟几次操作 :
a + x , b − y a+x,b-y a+x,b−y a + 2 x , b − 2 y ∣ ∣ a − 0 x , b − 2 y a+2x,b-2y || a-0x,b-2y a+2x,b−2y∣∣a−0x,b−2y a + 3 x , b − 1 y ∣ ∣ a + 1 x , b − 3 y a+3x,b -1y||a+1x,b-3y a+3x,b−1y∣∣a+1x,b−3y
我们会发现对于每次操作, x , y x,y x,y 前面的系数都是 同奇偶的
因此这题答案如下 :
Mycodeconst int N = 1e5+10;
void solve()
{
int x1,y1,x2,y2;
cin>>x1>>y1>>x2>>y2;
int x,y;
cin>>x>>y;
int dx = abs(x2 - x1);
int dy = abs(y2 - y1);
if(dx%x == 0 && dy%y == 0){
if(dx/x % 2 == dy/y % 2){
cout>n>>s;
ll l = 1 , r = n;
while(l a[i]) stk.pop();
if(stk.empty()) r[i] = n - i;
else r[i] = stk.top() - i - 1;
stk.push(i);
}
for(int i=1;i
关注
打赏