news 2026/6/10 13:04:11

《P2520 [HAOI2011] 向量》

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
《P2520 [HAOI2011] 向量》

题目描述

给你一对数 (a,b),你可以任意使用 (a,b),(a,−b),(−a,b),(−a,−b),(b,a),(b,−a),(−b,a),(−b,−a) 这些向量,问你能不能拼出另一个向量 (x,y)。

说明:这里的拼就是使得你选出的向量之和为 (x,y)。

输入格式

第一行数组组数 t(t≤50000)。

接下来 t 行,每行四个整数 a,b,x,y(−2×109≤a,b,x,y≤2×109)。

输出格式

t 行,每行为Y或者为N,分别表示可以拼出来,不能拼出来。

输入输出样例

输入 #1复制

3 2 1 3 3 1 1 0 1 1 0 -2 3

输出 #1复制

Y N Y

说明/提示

样例解释

第一组:(2,1)+(1,2)=(3,3)。

第三组:(−1,0)+(−1,0)+(0,1)+(0,1)+(0,1)=(−2,3)。

代码实现:

// luogu-judger-enable-o2 #include<iostream> #include<cstdio> #include<algorithm> #include<cstring> #include<cmath> using namespace std; typedef long long ll; inline ll rd() { ll x=0,f=1; char c=getchar(); while(c<'0'||c>'9') { if(c=='-') f=-1; c=getchar(); } while(c>='0'&&c<='9') { x=(x<<1)+(x<<3)+(c^48); c=getchar(); } return x*f; } ll T,A,B,X,Y; ll exgcd(ll a,ll b,ll &x,ll &y) { if(!b) { x=1,y=0; return a; } ll d=exgcd(b,a%b,x,y); ll t=x; x=y; y=t-a/b*y; return d; } int main() { T=rd(); while(T--) { A=rd(),B=rd(),X=rd(),Y=rd(); if(!A&&!B) { if(!X&&!Y) printf("Y\n"); else printf("N\n"); continue; } if(A<0) A=-A; if(B<0) B=-B; if(A<B) swap(A,B); ll k1,k2,d1=exgcd(A,B,k1,k2); if(X%d1) { printf("N\n"); continue; } ll k3,k4,d2=exgcd(A,B,k3,k4); if(Y%d2) { printf("N\n"); continue; } k1*=X/d1; k2*=X/d1; k3*=Y/d2; k4*=Y/d2; if((!A||!B) || ((k1+k2)%2+2)%2==((k3+k4)%2+2)%2 ) { printf("Y\n"); continue; } if(((A/d1)&1)^((B/d1)&1) || ((A/d2)&1)^((B/d2)&1) ) printf("Y\n"); else printf("N\n"); } return 0; }
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/6/10 12:58:11

【收藏向】大语言模型(LLM)核心知识全解析:从原理到应用入门

大语言模型&#xff08;LLM&#xff09;作为人工智能领域的颠覆性突破&#xff0c;正快速重塑自然语言处理&#xff08;NLP&#xff09;乃至全行业的技术格局。对于刚入门的程序员和AI小白而言&#xff0c;理清LLM的核心逻辑、技术原理与应用边界&#xff0c;是迈入大模型领域的…

作者头像 李华
网站建设 2026/5/30 19:43:07

ABB板卡PP C907 BE

核心产品信息PP C907 BE 指的是 ABB Freelance 2013 / AC 700F 控制器系列 中的核心组件&#xff1a;控制器&#xff1a; AC 700F (或兼容的 Freelance 2013 系统控制器)。模块类型&#xff1a; CPU 处理器模块。具体型号&#xff1a; C907 是这个CPU模块的具体型号代码。功能与…

作者头像 李华
网站建设 2026/6/7 5:34:44

Node.js 用hashring轻松做负载均衡

&#x1f493; 博客主页&#xff1a;瑕疵的CSDN主页 &#x1f4dd; Gitee主页&#xff1a;瑕疵的gitee主页 ⏩ 文章专栏&#xff1a;《热点资讯》 Node.js负载均衡新范式&#xff1a;用hashring实现高效、稳定的分布式服务目录Node.js负载均衡新范式&#xff1a;用hashring实现…

作者头像 李华
网站建设 2026/6/9 22:34:42

《把脉行业与技术趋势》-68-行业周期律以及背后的底层逻辑

行业周期律&#xff0c;是指特定行业在时间维度上呈现出的规律性兴衰更替现象。它并非随机波动&#xff0c;而是由经济、技术、政策、供需、资本等多重力量共同作用的结果。理解行业周期律及其底层逻辑&#xff0c;是投资者、创业者、职场人规避风险、捕捉机遇的核心能力。一、…

作者头像 李华
网站建设 2026/6/10 10:48:09

2026年苏州正规灵活用工企业排行榜推荐

2026年苏州正规灵活用工企业排行榜推荐行业痛点分析当前&#xff0c;灵活用工领域面临诸多技术挑战。一方面&#xff0c;企业在招聘和管理临时工、合同工时&#xff0c;往往难以实现高效匹配和精细化管理&#xff1b;另一方面&#xff0c;结算流程复杂且存在合规风险。数据显示…

作者头像 李华
网站建设 2026/6/5 11:03:32

Java中的异常与Error

Error 一般为系统导致的错误&#xff0c;和程序无关&#xff0c;不应该由程序处理。例如OOM, StackOverFlow 异常Exception 程序可以处理的非致命问题 可查异常&#xff1a; 程序编译阶段就会发现的异常&#xff0c;例如ClassNotFoundException&#xff0c;FileNotFoundExcepti…

作者头像 李华