“现代汽车中国前瞻软件赛杯” 牛客周赛 Round 43

A. 小红平分糖果(签到)

// Problem: 小红平分糖果
// Contest: NowCoder
// URL: https://ac.nowcoder.com/acm/contest/82394/A
// Memory Limit: 524288 MB
// Time Limit: 2000 ms
// 
// Powered by CP Editor (https://cpeditor.org)

#include<bits/stdc++.h>
using namespace std;
#define rep(i,a,b) for(int i=(a);i<=(b);++i)
#define per(i,a,b) for(int i=(a);i>=(b);--i)
typedef long long ll;
typedef double db;
typedef pair<ll,int> P;
#define fi first
#define se second
#define pb push_back
#define dbg(x) cerr<<(#x)<<":"<<x<<" ";
#define dbg2(x) cerr<<(#x)<<":"<<x<<endl;
#define SZ(a) (int)(a.size())
#define sci(a) scanf("%d",&(a))
#define scll(a) scanf("%lld",&(a))
#define pt(a) printf("%d",a);
#define pte(a) printf("%d\n",a)
#define ptlle(a) printf("%lld\n",a)
#define debug(...) fprintf(stderr, __VA_ARGS__)
int v;
int main(){
	sci(v);
	if(v&1)puts("-1");
	else printf("%d %d\n",v/2,v/2);
	return 0;
}

B. 小红的完全平方数(枚举)

// Problem: 小红平分糖果
// Contest: NowCoder
// URL: https://ac.nowcoder.com/acm/contest/82394/A
// Memory Limit: 524288 MB
// Time Limit: 2000 ms
// 
// Powered by CP Editor (https://cpeditor.org)

#include<bits/stdc++.h>
using namespace std;
#define rep(i,a,b) for(int i=(a);i<=(b);++i)
#define per(i,a,b) for(int i=(a);i>=(b);--i)
typedef long long ll;
typedef double db;
typedef pair<ll,int> P;
#define fi first
#define se second
#define pb push_back
#define dbg(x) cerr<<(#x)<<":"<<x<<" ";
#define dbg2(x) cerr<<(#x)<<":"<<x<<endl;
#define SZ(a) (int)(a.size())
#define sci(a) scanf("%d",&(a))
#define scll(a) scanf("%lld",&(a))
#define pt(a) printf("%d",a);
#define pte(a) printf("%d\n",a)
#define ptlle(a) printf("%lld\n",a)
#define debug(...) fprintf(stderr, __VA_ARGS__)
const int M=1e6+100;
ll v;
ll ans=1e18;
int main(){
	scanf("%lld",&v);
	rep(i,1,M){
		ll x=1ll*i*i;
		if((v-x)%2==0){
			ans=min(ans,abs(v-x)/2);
		}
	}
	ptlle(ans);
	return 0;
}

C. 小苯的字符串变化(枚举)

// Problem: 小苯的字符串变化
// Contest: NowCoder
// URL: https://ac.nowcoder.com/acm/contest/82394/C
// Memory Limit: 524288 MB
// Time Limit: 2000 ms
// 
// Powered by CP Editor (https://cpeditor.org)

#include<bits/stdc++.h>
using namespace std;
#define rep(i,a,b) for(int i=(a);i<=(b);++i)
#define per(i,a,b) for(int i=(a);i>=(b);--i)
typedef long long ll;
typedef double db;
typedef pair<ll,int> P;
#define fi first
#define se second
#define pb push_back
#define dbg(x) cerr<<(#x)<<":"<<x<<" ";
#define dbg2(x) cerr<<(#x)<<":"<<x<<endl;
#define SZ(a) (int)(a.size())
#define sci(a) scanf("%d",&(a))
#define scll(a) scanf("%lld",&(a))
#define pt(a) printf("%d",a);
#define pte(a) printf("%d\n",a)
#define ptlle(a) printf("%lld\n",a)
#define debug(...) fprintf(stderr, __VA_ARGS__)
const int N=1e5+100;
char s[N];
int n,cnt,a[N],res,ans=N;
int main(){
	scanf("%s",s+1);
	n=strlen(s+1);
	rep(i,1,n){
		a[i]=a[i-1];
		if('A'<=s[i] && s[i]<='Z')continue;
		a[i]++;
	}
	per(i,n,2){
		if('a'<=s[i] && s[i]<='z'){
			
		}
		else{
			res++;
		}
		ans=min(ans,a[i-1]+res);
	}
	pte(ans);
	return 0;
}

D. 小红的子数组排列判断​​​​​​(尺取)

// Problem: 小苯的字符串变化
// Contest: NowCoder
// URL: https://ac.nowcoder.com/acm/contest/82394/C
// Memory Limit: 524288 MB
// Time Limit: 2000 ms
// 
// Powered by CP Editor (https://cpeditor.org)

#include<bits/stdc++.h>
using namespace std;
#define rep(i,a,b) for(int i=(a);i<=(b);++i)
#define per(i,a,b) for(int i=(a);i>=(b);--i)
typedef long long ll;
typedef double db;
typedef pair<ll,int> P;
#define fi first
#define se second
#define pb push_back
#define dbg(x) cerr<<(#x)<<":"<<x<<" ";
#define dbg2(x) cerr<<(#x)<<":"<<x<<endl;
#define SZ(a) (int)(a.size())
#define sci(a) scanf("%d",&(a))
#define scll(a) scanf("%lld",&(a))
#define pt(a) printf("%d",a);
#define pte(a) printf("%d\n",a)
#define ptlle(a) printf("%lld\n",a)
#define debug(...) fprintf(stderr, __VA_ARGS__)
const int N=1e5+100;
int a[N],k,n,cnt[N],now,ans;
int main(){
	sci(n),sci(k);
	rep(i,1,n)sci(a[i]);
	rep(i,1,k){
		if(a[i]<=k){
			cnt[a[i]]++;
			if(cnt[a[i]]==1)now++;
		}
	}
	ans=(now==k);
	rep(i,k+1,n){
		if(a[i-k]<=k){
			cnt[a[i-k]]--;
			if(cnt[a[i-k]]==0)now--;
		}
		if(a[i]<=k){
			cnt[a[i]]++;
			if(cnt[a[i]]==1)now++;
		}
		if(now==k)ans++;
	}
	pte(ans);
	return 0;
}

E. 小红的平行四边形(枚举+叉积)

把向量长度方向均相同的放入同一个vector内,

找到同一个vector内最小的截距和最大的截距,

二者如果不共线的话,就可以用叉积更新最大答案

复杂度O(n^2logn),自己写的比较丑,补一下烟花的代码吧

/**
 * Created by 5cm/s on 2024/05/19 19:10:49.
 * 诸天神佛,佑我上分!
 **/
#include <bits/stdc++.h>

using namespace std;

#define itr(it) begin(it), end(it)
#define endl '\n'
#define YES() void(cout << "YES\n")
#define NO() void(cout << "NO\n")

using i64 = int64_t;
using pii = pair<i64, i64>;
using ld = long double;

void elysia() {
    int n;
    cin >> n;
    vector<pii> p(n);
    for (auto &[x, y]: p) cin >> x >> y;
    map<pii, vector<ld>> mp;
    for (int i = 0; i < n; ++i) {
        auto [x1, y1] = p[i];
        for (int j = i + 1; j < n; ++j) {
            auto [x2, y2] = p[j];
            i64 dx = x1 - x2, dy = y1 - y2;
            i64 a = dy, b = -dx;
            if (a < 0) a = -a, b = -b;
            else if (a == 0) b = abs(b);
            assert(a * x1 + b * y1 == a * x2 + b * y2);
            mp[{a, b}].emplace_back(a * x1 + b * y1);
        }
    }
    i64 ans = -1;
    for (auto &[vec, dd]: mp) {
        auto [a, b] = vec;
        i64 d1 = *min_element(itr(dd)), d2 = *max_element(itr(dd));
        if (d1 != d2) {
            ans = max(ans, d2 - d1);
        }
    }
    if (ans < 0) {
        cout << -1 << endl;
    } else {
        cout << ld(ans) << endl;
    }
}

int main() {
#ifdef MEGURINE
    freopen("../input.txt", "r", stdin);
    freopen("../output.txt", "w", stdout);
    clock_t start = clock();
#endif
    ios::sync_with_stdio(false);
    cin.tie(nullptr);
    cout.tie(nullptr);
    int T = 1;
//    cin >> T;
    cout << fixed << setprecision(1);
    while (T--) elysia();
#ifdef MEGURINE
    clock_t end = clock();
    cout << "\nRunning Time: " << (double) (end - start) / CLOCKS_PER_SEC * 1000 << "ms" << endl;
#endif
    return 0;
}

F. 小红小紫画线(容斥)

先选点,后连边涂颜色,这个题就好做了

先看下总共有4个点还是3个点,4个点交点在中间,3个点交点在端点

4个点有一条边上选4个(4)、一条边选3个另一条边选一个(3+1)、

一条边选2个另一条边选2个(2+2)、2+1+1、1+1+1+1这些情况

其中合法的有2+2、2+1+1、1+1+1+1,分别合法两种

3个点有2+1和1+1+1两种,2+1合法两种,1+1+1合法六种

分别统计即可,写的比较暴力,赛中还少写了一种情况导致没过

这里补一下NameError的写法

MOD = 10**9+7
n = int(input())
arr = list(map(int, input().split()))
s = sum(arr) % MOD
ans = s*(s-1)*(s-2)*(s-3)//12
ans -= sum(a*(a-1)*(a-2)//3 * (s-a) % MOD for a in arr)
ans -= sum(a*(a-1)*(a-2)*(a-3)//12 % MOD for a in arr)
ans += sum(a*(s-a)*(s-a-1) % MOD for a in arr)
print(ans % MOD)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/634907.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

【软件工程】【23.10】p2

关键字&#xff1a; 软件复用技术、过程途径、特定需求是文档核心、数据字典条目、高内聚低耦合独立性、数据流图映射模块结构图、UML依赖、用例图关系、RUB迭代、程序规格说明等价类划分、有效性测试的目标、喷泉模型面向对象、软件验证过程、CMMI

Windows安装php_ssh2扩展

一、读取PHP信息 先用phpinfo读取使用的php的版本信息 二、下载ssh2扩展 链接&#xff1a;https://windows.php.net/downloads/pecl/snaps/ssh2/1.2-dev/ 点击链接下载对应链接 三、开启扩展 下载好压缩包后&#xff0c;解压缩得到php_ssh2.dll、php_ssh2.pdb文件&#xff…

AWS容器之Amazon ECS

Amazon Elastic Container Service&#xff08;Amazon ECS&#xff09;是亚马逊提供的一种完全托管的容器编排服务&#xff0c;用于在云中运行、扩展和管理Docker容器化的应用程序。可以理解为Docker在云中对应的服务就是ECS。

JavaSE:Clonable接口、浅拷贝与深拷贝

1、引言 我们在学习的数组时&#xff0c;就了解到了数组克隆方法&#xff0c;可以通过数组克隆方法来拷贝一个一模一样的数组&#xff1a; 那对于自定义类型中有没有克隆方法呢&#xff1f;答案是有的&#xff01; 就让这篇文章来帮助大家学习自定义类型的拷贝&#xff01; …

OpenHarmony开发之MQTT讲解

相信MQTT这个名称大家都不陌生&#xff0c;物联网的开发必然会遇到MQTT相关知识的应用。那么什么是MQTT&#xff1f;它有什么特点&#xff1f;它能解决什么问题&#xff1f;它是如何工作的&#xff1f;OpenAtom OpenHarmony&#xff08;以下简称“OpenHarmony”&#xff09;的物…

10最佳iPhone数据恢复软件评论

您还在寻找最好的iPhone数据恢复软件吗&#xff1f; 似乎我们在iPhone上放置了越来越多与日常生活和工作有关的重要事情。照片可以保持珍贵的时刻&#xff0c;联系人可以保持联系&#xff0c;录音&#xff0c;备忘录和日历可以作为提醒&#xff0c;视频和歌曲可以娱乐&#xf…

基于Java的推箱子游戏设计与实现(论文 + 源码)

【免费】关于基于JAVA的推箱子游戏.zip资源-CSDN文库https://download.csdn.net/download/JW_559/89325018 基于Java的推箱子游戏设计与实现 摘 要 社会在进步&#xff0c;人们生活质量也在日益提高。高强度的压力也接踵而来。社会中急需出现新的有效方式来缓解人们的压力。…

NDI入门教程二

一、移植到RK&#xff1a; 编译相关&#xff1a; ndi本身没有什么好移植编译的&#xff0c;本身提供的就是so库。但是ndi依赖其它第三方开源库&#xff1a; avahi; dbus; expat; libcap; libdameon。因为编译这些开源库的服务器也需要安装一些插件所以在自己虚拟机Ubuntu20.04…

notepad++ 批量转所有文件编码格式为UTF-8

1、安装notepad及PythonScript_3.0.18.0插件 建议两者都保持默认路径安装x64版本&#xff1a; 阿里云盘分享https://www.alipan.com/s/xVUDpY8v5QL安装好后如下图&#xff1a; 2、new Script&#xff0c;新建脚本&#xff0c;文件名为ConvertEncoding 3、自动打开脚本&#xff…

Jenkins 动态salve简单配置连接 EKS

安装Jenkins helm repo add jenkins https://charts.jenkins.io helm repo update # 当前版本 jenkins-5.1.18.tgz瘦身后的 values.yaml # grep -Ev ^\s*#|^$ values.yaml nameOverride: fullnameOverride: namespaceOverride: clusterZone: "cluster.local" kubern…

(Oracle)SQL优化基础(三):看懂执行计划顺序

往期内容&#xff1a; &#xff08;Oracle&#xff09;SQL优化基础&#xff08;一&#xff09;&#xff1a;获取执行计划 &#xff08;Oracle&#xff09;SQL优化基础&#xff08;二&#xff09;&#xff1a;统计信息 获取到执行计划后&#xff0c;对于新手朋友来讲可能不知道…

火箭升空AR虚拟三维仿真演示满足客户的多样化场景需求

在航空工业的协同研发领域&#xff0c;航空AR工业装配系统公司凭借前沿的AR增强现实技术&#xff0c;正引领一场革新。通过将虚拟信息无缝融入实际环境中&#xff0c;我们为工程师、设计师和技术专家提供了前所未有的共享和审查三维模型的能力&#xff0c;极大地提升了研发效率…

【华为】BFD与静态路由和RIP联用

【华为】BFD与静态路由和RIP联用 实验需求配置AR1AR2AR3AR4效果抓包查看 实验需求 如上图组网所示&#xff0c;在R1上配置到达R4的Loopback0。 4.4.4.4/32网段的浮动静态路由&#xff0c;正常情况下通过R3访问R4。 当R3故障时&#xff0c;自动选路通过R2访问R4的Loopback0;在R…

企业文件加密软件推荐:迅软DSE加密软件你用了吗?

一、挑选企业文件加密软件需考虑的因素&#xff1f; 1、安全性&#xff1a;软件应采用业界认可的强加密算法&#xff0c;以确保数据的安全性。 迅软特有的256位高强度加密算法&#xff0c;从根本上阻止一切破解的可能性。 2、易用性&#xff1a;软件应该易于部署和管理&…

如何停止 iPad 和 iPhone 之间共享短信,独立接收和发送消息

概括 在当今高度互联的数字世界中&#xff0c;Apple 设备之间的无缝连接性提供了极大的便利&#xff0c;尤其是在消息同步方面。iPhone 和 iPad 用户通常可以享受到设备间短信的自动同步功能&#xff0c;这意味着无论是在哪个设备上&#xff0c;用户都可以接收和回复消息。然而…

游戏联运的挑战与核心关键点

​游戏联运一个看似充满机遇与挑战的行业&#xff0c;吸引了很多创业者的加入。然而&#xff0c;真正踏入这个行业后&#xff0c;许多人会发现&#xff0c;手游代理并非想象中的那么简单。今天&#xff0c;溪谷软件就来和大家聊聊游戏联运是怎么做的&#xff0c;需要注意什么。…

react中的useEffect()的使用

useEffect()是react中的hook函数&#xff0c;作用是用于创建由渲染本身引起的操作&#xff0c;而不是事件的触发&#xff0c;比如Ajax请求&#xff0c;DOM的更改 首先useEffect()是个函数&#xff0c;接受两个参数&#xff0c;第一个参数是一个方法&#xff0c;第二个参数是数…

《计算机体系结构》期末考试复习笔记(一)试卷手写笔记(超重点)

一、MIPS 执行速率执行时间有效CPI【第1题】 二、Amdahl定律 - 性能加速比SP【第2题&#xff0c;第3题&#xff0c;第4题】 (百分比f 倍数r &#xff09; 三、哈夫曼编码 2-4扩展码【第5题】 四、互连函数【第9题】 就是每生成一个根节点&#xff0c; 就从小到大重新排…

后量子密码解决方案

什么是后量子密码学 (PQC)&#xff0c;为什么准备工作如此重要? 量子计算正在迅速发展;用不了多久&#xff0c;量子网络攻击就会成为可能。量子网络攻击将能够在几分钟内瘫痪大型网络。我们今天赖以保护我们的连接和交易的一切都将受到量子计算机的威胁&#xff0c;危及所有密…

【618狂欢】五款必抢好物!爆款数码好物让你轻松get新潮流!

随着科技的飞速发展&#xff0c;数码产品已经成为我们生活中不可或缺的一部分。它们不仅为我们提供了便捷的生活体验&#xff0c;更成为了我们展示个性和追求潮流的重要载体。而在每年的618购物狂欢节&#xff0c;各大电商平台都会推出众多优惠活动&#xff0c;让我们有机会以更…