【BZOJ-2299】向量 裴蜀定理 + 最大公約數

2299: [HAOI2011]向量

Time Limit: 10 Sec??Memory Limit: 256 MB
Submit: 1118??Solved: 488
[Submit][Status][Discuss]

Description

給你一對數a,b,你可以任意使用(a,b), (a,-b), (-a,b), (-a,-b), (b,a), (b,-a), (-b,a), (-b,-a)這些向量,問你能不能拼出另一個向量(x,y)。

說明:這里的拼就是使得你選出的向量之和為(x,y)

Input

第一行數組組數t,(t<=50000)

接下來t行每行四個整數a,b,x,y? (-2*109<=a,b,x,y<=2*109)

Output

t行每行為Y或者為N,分別表示可以拼出來,不能拼出來

Sample Input

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

Sample Output

Y
N
Y

HINT

樣例解釋:
第一組:(2,1)+(1,2)=(3,3)
第三組:(-1,0)+(-1,0)+(0,1)+(0,1)+(0,1)=(-2,3)

Source

Solution

首先我們把這些東西組合一下,發現其實這些東西其實相當于是4種變換

(x+-2a,y)/(x,y+-2a)

(x+-2b,y)/(x+-2b,y)

(x+a,y+b)

(x+b,y+a)

那么用裴蜀定理判定一下

證明看這里:折越

Code

#include<iostream>
#include<cstdio>
#include<algorithm>
#include<cmath>
#include<cstring>
using namespace std;
int t;
long long d;
long long Gcd(long long a,long long b) {if (b==0) return a; return Gcd(b,a%b);}
bool check(long long a,long long b) {if (!(a%d) && !(b%d)) return 1; return 0;}
long long a,b,x,y;
int main()
{scanf("%d",&t);while (t--){scanf("%lld%lld%lld%lld",&a,&b,&x,&y);d=Gcd(a,b)<<1;if (check(x+a,y+b) || check(x+b,y+a) || check(x+a+b,y+a+b) || check(x,y)) puts("Y");else puts("N");}return 0;
} 

?

轉載于:https://www.cnblogs.com/DaD3zZ-Beyonder/p/5719056.html

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/286829.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/286829.shtml
英文地址,請注明出處:http://en.pswp.cn/news/286829.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

采用ArcGIS 10.6制作漂亮的點陣世界地圖,完美!!!

如下圖所示,怎樣制作完美漂亮的點陣世界地圖呢?今天我就教大家吧! 其實,制作過程相當簡單,主要的思路是通過世界地圖范圍去創建漁網(標注點),再選擇范圍內的標注點,符號化即可,怎么樣,很簡單吧,下面我們一步一步來實現吧。 1. 加載世界地圖 打開ArcGIS軟件,加載軟…

Android ping命令 -- Runtime

代碼&#xff1a; 1 public String Run(String _strsIp) throws Exception2 {3 String strRst "";4 try5 {6 String str "ping -c 1 "_strsIp;7 Runtime runtime Runtime.getRuntime();8 …

懶辦法1篇文10分鐘快速入門MySQL增刪查改

作者簡介 作者名&#xff1a;1_bit 簡介&#xff1a;CSDN博客專家&#xff0c;2020年博客之星TOP5&#xff0c;InfoQ簽約作者&#xff0c;藍橋簽約作者。15-16年曾在網上直播&#xff0c;帶領一批程序小白走上程序員之路。歡迎各位小白加我咨詢我相關信息&#xff0c;迷茫的你…

Android(kotlin)之對一組圖片數據更新最后的修改時間進行分類顯示

1 需求 我們需要實現攜帶時間頭的一系列照片如下顯示,現在我們拿到了圖片集合,肯定需要對圖片根據實現進行分組顯示 date picture picture picture picture picture picture picture picture picturedate picture picture picture picture picture 2 代碼實現 fun getImag…

SqlServer 數據庫 分離復制備份然后附加回數據庫 sql代碼

工作中&#xff0c;我們經常需要把數據庫進行分離&#xff0c;復制數據庫到另一個地方&#xff0c;再將原數據庫文件附加回數據庫 。 當然通過鼠標操作的步驟比較麻煩&#xff1a; 1、 右鍵數據庫 --------任務------分離 2、打開數據庫文件所在目錄&#xff0c;復制數據庫 …

01:操作系統(centos,redhat):性能監控和網絡命令

性能監控和優化命令 top命令功能&#xff1a;顯示當前系統正在執行的進程的相關信息&#xff0c;包括進程ID、內存占用率、CPU占用率等常用參數&#xff1a;-d 屏幕刷新間隔時間屏幕信息解釋字段說明&#xff1a;第一行&#xff1a;top 當前系統時間up 系統運行時間…

大話領域驅動設計——領域層

概述在DDD中&#xff0c;業務邏輯主要分布在領域層和應用層兩層&#xff0c;他們包含不同的業務邏輯。這一篇&#xff0c;我們先對領域層做詳細的講解分析。領域層實現了領域或系統的&#xff0c;與用戶界面上的用戶交互&#xff08;用例&#xff09;無關的核心業務邏輯。總覽領…

【北斗】北斗衛星導航系統(BDS)介紹

一、概述 北斗衛星導航系統(以下簡稱北斗系統)是中國著眼于國家安全和經濟社會發展需要,自主建設運行的全球衛星導航系統,是為全球用戶提供全天候、全天時、高精度的定位、導航和授時服務的國家重要時空基礎設施。 北斗系統提供服務以來,已在交通運輸、農林漁業、水文監…

Android之解決VideoView控件的進度條位置擺放問題和打開播放黑屏問題

1 問題 VideoView控件如何配合MediaController使用,就會顯示進度條,但是位置擺放在最底部,不是我們想要的結果 2、基本使用 private var mMediaController:MediaController? = nullfun playVedio() {mMediaController = MediaController(this as Activity)trashVideoView…

Snmp linux

http://blog.csdn.net/youngqj/article/details/7311849 http://blog.csdn.net/howema/article/details/4182408 http://my.oschina.net/yisenn/blog/14626轉載于:https://www.cnblogs.com/diyunpeng/p/5720952.html

正則驗證金額大于等于0,并且只到小數點后2位

2019獨角獸企業重金招聘Python工程師標準>>> ^(([0-9]|([1-9][0-9]{0,9}))((\.[0-9]{1,2})?))$ 轉載于:https://my.oschina.net/u/934148/blog/528688

我結婚了,我要用什么做個邀請函呢?【iVX無代碼YYDS 06】

作者簡介 作者名&#xff1a;1_bit 簡介&#xff1a;CSDN博客專家&#xff0c;2020年博客之星TOP5&#xff0c;InfoQ簽約作者、CSDN新星導師&#xff0c;華為云享專家。15-16年曾在網上直播&#xff0c;帶領一批程序小白走上程序員之路。歡迎各位小白加我咨詢我相關信息&#…

【專升本計算機】計算機文化基礎練習題(選擇題300道附答案)

專升本計算機文化基礎練習題 1、 世界上第一臺電子計算機誕生于 ______A_ 。 A . 20 世紀 40 年代 B . 19 世紀 C . 20 世紀 80 年代 D . 1950 年 2、 世界上第一臺電子計算機是 1946 年在美國研制成功的,該機的英文縮寫名是 ___A__ 。 A . ENIAC B . EDVAC C…

《微軟云計算Microsoft Azure部署與管理指南》即將上市!!!

大家好&#xff0c;本人新作《微軟云計算Microsoft Azure部署與管理指南》即將與廣大讀者見面&#xff0c;由電子工業出版社出版。希望大家能關注此書&#xff0c;并推薦給身邊的好友和技術人員。 眾所周知&#xff0c;Microsoft Azure是專業的國際化公有云平臺, 是微軟研發的公…

如何用SQL來檢測文件是否存在

工作中&#xff0c;我們經常需要檢查上傳的文件是否存在&#xff0c;用戶上傳的頭像是否存在&#xff0c;等等。 有沒有辦法直接用SQL來查詢呢&#xff1f; 請直接看代碼&#xff1a; /************************************************************ * Create By Jacky * T…

如何解決分布式日志exceptionless的寫入瓶頸

我們都知道在分布式日志當中&#xff0c;exceptionless客戶端是把日志寫到Elasticsearch數據庫&#xff0c;就像我們把數據寫入到關系數據庫一樣&#xff1b;既然是寫入&#xff0c;那么在短時間大數據量的情況下&#xff0c;寫入就會涉及到效率的問題&#xff1b;首先我們看下…

iVX 基礎

1.1 iVX 線上集成環境進入 點擊 連接 或通過瀏覽器輸入網址 https://editor.ivx.cn/ 進入線上集成開發環境。 進入 在線集成開發環境 后&#xff0c;可點擊右上角 登錄/注冊 進行帳號登錄或者注冊。登錄賬戶 后在進行項目開發時會自動保存項目開發進度。 [外鏈圖片轉存失敗…

關于有序二維矩陣查找和字符串替換的兩道算法題

最近看一本書上寫到的兩個面試題 于是實現了一下 感覺思路很好,大牛略過 : 1、對于一個二維矩陣,從左到右 從上到下 都是遞增的,如何判斷一個值是否在矩陣內部?&#xff08;C實現 實現復雜度 O(n)&#xff09; bool FindInTwoDimensionalMatrix(int*pMatrix,int iRows,int i…

Maven實戰:pom.xml與settings.xml

pom.xml與settings.xml pom.xml與setting.xml&#xff0c;可以說是Maven中最重要的兩個配置文件&#xff0c;決定了Maven的核心功能&#xff0c;雖然之前的文章零零碎碎有提到過pom.xml和settings.xml里面的內容&#xff0c;但都是大略帶過&#xff0c;學習與研究地并不細致&am…

Android之靠譜的把圖片和視頻插入手機系統相冊

1 需求 把圖片和視頻插入手機系統相冊,網上查了下基本上很亂,沒幾個靠譜的。 2 結果爆照 3 思路 圖片插入系統相冊(可以直接插入系統相冊,但是我這里多做了一步就是先把圖片拷貝到了一個目錄再插入系統相冊) 視頻插入系統相冊(先把視頻拷貝到MIUI目錄,然后再…