栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > C/C++/C#

Codeforces Global Round 19

C/C++/C# 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Codeforces Global Round 19

A. Sorting Parts

签到题

思路

n个数,分别将1~(n-1) 长度的前后缀进行排序,如果某次不是非降序就输出"YES",否则输出"NO"

就是因为前后缀长度从1开始,所以只要原始的数组里有一个数是不满足非降序的,那么在之后的某次排序中一定不满足非降序
eg: 2 1 4 5 6
排序,先是对 长度为1的前后缀排序,仍然是 2 1 4 5 6 不满足非降序

代码
#include
#include
#include

typedef int Bool;
typedef long long ll;
#define MS(a, b) memset(a, b, sizeof(a))
int compare(const void* a, const void* b);

ll s[N]; 
int main() {
	int T;
	scanf("%d", &T);
	while (T--) {
		int n = 0;
		MS(s, 0);
		scanf("%d", &n);
		for (int i = 0; i < n; i++) {
			scanf("%lld", &s[i]);
		}
		int flag = 0;
		for (int i = 1; i < n; i++) {
			if (s[i] < s[i - 1]) flag = 1;
		}
		if (flag) printf("YESn");
		else printf("NOn");
	}
	return 0;
}
int compare(const void* a, const void* b) {
	ElementType * s1 = (ElementType*)a;
	ElementType * s2 = (ElementType*)b;
	if (*s1 > *s2) return 1;
	else
	if (*s1 == *s2) return 0;
	else return -1;
}
C. Andrew and Stones

签到题…但是我还是没看懂

思 路

n堆石子,每堆ai个,选三个数 1 ≤ i < j < k ≤ n,并且 j 必须大于等于2
将j中石子,每次向 i 放一个 向k 放一个
问是否能把所有石子都移动到 第一堆和最后一堆里

分情况

    n == 3 ,中间如果是奇数就不能n为任意,中间全是1,不能移动石子,输出-1满足情况的

所以直接在遍历的时候判断是不是全是1即可,
然后记录下最小的步数为,(s[i] + 1) / 2的和

代码
#include
#include
#include
#include
#include

typedef int Bool;
typedef long long ll;
typedef unsigned long long ull;

#define N 100000+5
#define MS(a, b) memset(a, b, sizeof(a))


ll s[N], sum, ans;
int main() {
	int T, n;
	scanf("%d", &T);
	while (T--) {
		sum = 0;//记录总步数 (s[i] + 1) / 2 
		ans = 0;//判断是否全是 1  
		MS(s, 0);
		scanf("%d", &n);
		for (int i = 0; i < n; i++)
			scanf("%lld", &s[i]);
		for (int i = 1; i < n - 1; i++) {
			ans |= (s[i] > 1) ;
			sum += (s[i] + 1) / 2;
		}
		if (!ans || (n == 3 && s[1] % 2 == 1))	printf("-1n");
		else printf("%lldn", sum);
	}
	return 0;
}


转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/738146.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号