首页 > 其他分享 >题解 CF1719B

题解 CF1719B

时间:2022-11-30 09:24:23浏览次数:38  
标签:输出 int 题解 CF1719B 整除 include

题解 CF1719B

这个题观察样例,可以发现,被选中的两个数,一定是相邻的两个数。

所以,我们只需要先循环一遍,看看有多少数满足,然后判断是否等于 n

如果等于说明可以 ,先输出 YES ,否则输出 NO

如果是 YES ,就直接再循环一遍,判断相邻的两个数,哪个是 \(+k\) 才能被 4 整除的,哪个是直接就可以 4 整除的。

先输出 \(+k\) 才能被 4 整除的。

然后输出直接就可以 4 整除的。

#include<cstdio>
#include<iostream>
#include<cmath>
#include<algorithm>
#include<string>
#include<cstring>
#include<stack>
#include<map>
#include<queue>
//#define int long long
using namespace std;
int T;
queue<int> q_o,q_n;
int main(){
	scanf("%d",&T);
	while(T--){
		int n,k;
		scanf("%d%d",&n,&k);
		int f=0;
		for(int i=1;i<=n;i+=2){
			if((i+k)*(i+1)%4==0 || i*(i+1+k)%4==0){
				f+=2;
			}
		} 
		if(f==n){
			printf("YES\n");
			for(int i=1;i<=n;i+=2){
				if((i+k)*(i+1)%4==0 && i+1<=n){
					printf("%d %d\n",i,i+1); 
				}else if(i*(i+1+k)%4==0 && i+1<=n){
					printf("%d %d\n",i+1,i); 
				}
			}
		}else{
			printf("NO\n");
		}
		
	}
    return 0;
}

标签:输出,int,题解,CF1719B,整除,include
From: https://www.cnblogs.com/Tyrue-blog/p/16937404.html

相关文章

  • 题解 SP18965
    题解SP18965题目大意:奶牛很厌烦等待,奶牛i在它的截止时间$d_i(1\leqd_i\leq10,000)$前挤\(g(1\leqg_i\leq1000)\)的奶,否则将不能挤奶。时间t开始时为0,......
  • 题解 CF518B
    题解CF518B这个题最暴力的做法就是对于每个\(s_i\)都在b字符串里扫一遍但是\(s.len\leq2\times10^5\)所以肯定过不了但是我们思考一下,这里的字母对应其实可以......
  • 题解 CF1719A
    题解CF1719A这个题判断\(n+m\)的奇偶性就可以了。奇数输出Burenka,偶数输出Tonya。#include<cstdio>#include<iostream>#include<cmath>#include<algorithm>......
  • 题解 CF1716B
    题解CF1716B这是一个纯纯的构造题我们要构造n个序列,每个序列他的元素\(a_i\)在第i个位置上的数量都应该比上一个序列的数量并且这种序列只能通过交换两个数字来......
  • 题解 CF1091C
    题解CF1091C这个题乍一看,好像有点像约瑟夫问题,但是写完了之后会发现,就会发现TLE了因为\(n\le10^9\),而且用约瑟夫问题写的话每次都会跳k步,肯定会超时超时代码这里......
  • 题解 CF1080B
    题解CF1080B莫名就卡到了最优解第一,但是代码又长又臭,很明显我代码实现能力太弱了。。。直接开始讲,我都不知道怎么讲分情况讨论如果\(l=r\):我们只需要考虑这个位置......
  • 题解 CF1253B
    题解CF1253B这个题是一个模拟题只需要注意几点:1.同一天同一个人只能进入一次2.同一天同一个人只能出去一次3.一天中一个人没进来就不能出去然后我们用vis数组......
  • 题解 CF1711B
    题解CF1711B这个题说明了,蛋糕的个数只跟好友的对数有关,跟去的人或者是单个的人的个数是无关的(是不是单个的人去没有蛋糕吃)所以我们就要考虑,怎样才能满足吃掉的蛋糕正好......
  • 题解 CF1740D
    CF1740D这个题说实话比\(C\)题要好想/jk,但是我没有在考场上写出来,写出来了但是没交上这个题只需要记录一下终点当前时刻,需要放置下标的棋子(姑且叫它棋子),以及当前棋盘上......
  • Codeforces Round #836 (Div. 2) A-D题解
    比赛链接A、SSeeeeiinnggDDoouubbllee一个字符串的每个字母翻倍,且没有其他限制。所以把字符串正着输一遍,再倒叙输出一遍即可。点击查看代码#include<bits/stdc++.h>......