当前位置: 首页 > news >正文

Skibidus and Fanum Tax (easy version)----Skibidus 和 Fanum 税(简易版)

B - 相知无间然 

https://vjudge.net/problem/CodeForces-2065C1/origin

这是问题的简单版本。在这个版本中,m=1m=1。

Skibidus 获得了两个数组 aa 和 bb,分别包含 nn 和 mm 个元素。对于每个整数 ii 从 11 到 nn,他可以执行操作 最多一次:

  • 选择一个整数 jj 使得 1≤j≤m1≤j≤m。设置 ai:=bj−aiai​:=bj​−ai​。注意,aiai​ 可能会因为这个操作而变为非正数。

Skibidus 需要你的帮助来确定他是否可以通过执行上述操作若干次将 aa 排成非递减顺序∗∗。

∗∗aa 如果 a1≤a2≤…≤ana1​≤a2​≤…≤an​,则 aa 是非递减顺序的。

输入

第一行包含一个整数 tt (1≤t≤1041≤t≤104) — 测试用例的数量。

每个测试用例的第一行包含两个整数 nn 和 mm (1≤n≤2⋅1051≤n≤2⋅105, m = 1m = 1)。

每个测试用例的下一行包含 nn 个整数 a1,a2,…,ana1​,a2​,…,an​ (1≤ai≤1091≤ai​≤109)。

每个测试用例的下一行包含 mm 个整数 b1,b2,…,bmb1​,b2​,…,bm​ (1≤bi≤1091≤bi​≤109)。

保证所有测试用例中 nn 的总和和 mm 的总和不超过 2⋅1052⋅105。

输出

对于每个测试用例,如果可以将 aa 排成非递减顺序,则在新的一行打印 "YES"。否则,在新的一行打印 "NO"。

你可以以任何大小写输出答案。例如,字符串 "yEs"、"yes" 和 "Yes" 也会被识别为肯定的回应。

示例

InputcopyOutputcopy
5
1 1
5
9
3 1
1 4 3
3
4 1
1 4 2 5
6
4 1
5 4 10 5
4
3 1
9 8 7
8
YES
NO
YES
NO
YES

注意

在第一个测试用例中,[5][5] 已经是排序好的。

在第二个测试用例中,可以证明这是不可能的。

在第三个测试用例中,我们可以设置 a3:=b1−a3=6−2=4a3​:=b1​−a3​=6−2=4。序列 [1,4,4,5][1,4,4,5] 是非递减顺序。

在最后一个案例中,我们可以对每个索引应用操作。序列变为 [−1,0,1][−1,0,1],这是非递减顺序。

思路:

使循环,使每一个都保证在成立的情况下最小,不成立则结束

代码:

#define _CRT_SECURE_NO_WARNINGS 1
#include<stdio.h>
int a[200005], n, m, e, t, q=0;
int main() {
	scanf("%d", &t);
	while(t--){
		scanf("%d %d", &n, &m);
		for (int i = 0;i < n;i++) {
			scanf("%d", &a[i]);
		}
		scanf("%d", &e);
		q = 0;
		for (int i = 0;i < n;i++) {
			if (i == 0) {
				a[i] = a[i] < e - a[i] ? a[i] : e - a[i];
			}//使第一个最小
			else {
				//使第i在成立的情况下最小
				if (a[i] >= a[i - 1] && e - a[i] >= a[i - 1]) {
					a[i] = a[i] < e - a[i] ? a[i] : e - a[i];
				}
				else if(a[i] >= a[i - 1]&& e - a[i] < a[i - 1]){
					a[i] = a[i];
				}
				else if (a[i] < a[i - 1] && e - a[i] >= a[i - 1]) {
					a[i] = e - a[i];
				}
				//不成立,返回
				else {
					q = 1;
					break;
				}
			}
		}
		if (q) {
			printf("No\n");
		}
		else {
			printf("Yes\n");
		}
	}
	return 0;
}

相关文章:

  • 第四届图像、信号处理与模式识别国际学术会议(ISPP 2025)
  • 利用acme.sh 申请 Google 免费证书
  • 人车检测与计数系统(python+课程设计报告+源代码+数据集)
  • LeetCode 98.验证二叉搜索树
  • vscode远程报错:Remote host key has changed,...
  • 软件安全测试技术系列|跨站脚本攻击(Cross Sites Script)类漏洞攻击方式与防御措施
  • Opencv项目实战:26 信用卡号码识别与类型判定
  • 自动化办公|通过xlwings进行excel格式设置
  • 防火墙综合实验
  • ✨1.HTML、CSS 和 JavaScript 是什么?
  • 深度学习笔记——LSTM
  • 自动化测试框架搭建-单次接口执行-三部曲
  • 深入理解 fnmatch 函数的实现
  • 04 redis数据类型
  • 《DeepSeek赋能工业互联网:解锁数据深度分析新姿势》
  • python常用库整理
  • 【实用技巧】云服务器+FRP搭建自己的远程控制向日葵
  • 最简单的难题——游戏英雄升级潜力评估
  • Flutter 跳转后不允许返回
  • 习题系列——数值分析与数值计算
  • 竞彩湃|德甲欧冠资格竞争白热化,伯恩茅斯主场迎恶战
  • 广西钦州:坚决拥护自治区党委对钟恒钦进行审查调查的决定
  • 梅花奖在上海|第六代“杨子荣”是怎样炼成的?
  • 美联储连续第三次维持利率不变,警示关税影响
  • 上任后首访,德国总理与法国总统举行会晤
  • 驱逐行动再加码?特朗普或向利比亚和卢旺达遣送非法移民