河南萌新联赛2024第(二)场:南阳理工学院

如何下载安装Qt各个版本?(2025-4-28更新) 本文将教您快速获取Qt各版本安装包!妈妈再也不用担心我找不到Qt安装包了! 阅读详情

河南萌新联赛2024第(二)场:南阳理工学院

2024.7.24 13:00————15:00

过题数5/11
补题数6/11

  • 国际旅行Ⅰ
  • 国际旅行Ⅰ
  • 小w和大W的决斗。
  • A*BBBB
  • “好”字符
  • 水灵灵的小学弟
  • lxy的通风报信
  • 狼狼的备忘录
  • 重生之zbk要拿回属于他的一切
  • 这是签到
  • Magic Cube

A - 国际旅行Ⅰ

题解:
n个国家,每个国家中a[i]个城市,国家之间一共修建了m条道路,q次询问每次输出从第一个国家能到达的城市数量第k少的国家有多少个城市。
这个问题的重点在于“保证各个国家之间可以相互到达”,所以就非常简单了,直接排序后输出第k少的国家即可。
代码:

#include <bits/stdc++.h>

using namespace std;
#define int long long
const int N = 1200;
int n,m,q;
int a[N];

signed main() {
    cin >> n >> m >> q;
    for (int i = 1; i <= n;i++) {
        cin >> a[i];
    }sort(a+1,a+1+n);
    while(m--) {
        int u,v;
        cin >> u >> v;
    }
    while(q--) {
        int k;
        cin >> k;
        cout << a[k] << endl;
    }
    return 0;
}

D - A*BBBB

题解:
求a*b的值,其中b的每一位都相同,a,b的长度小于1e6。
大概就是这么一个相乘的部分,a的长度小于b时中间会有一部分全部的相加,也可以画图得出。
在这里插入图片描述

代码:

#include<iostream>
#include<algorithm>
#include<vector>
#include<map>
#include<cmath>

using namespace std;
#define int long long
string a,b;

signed main() {
    ios::sync_with_stdio(false);
    cin.tie(0);
    cout.tie(0);
    int t;
    cin >> t;
    while(t--) {
    cin >> a >> b;
    reverse(a.begin(),a.end());
    int cur = 0,cur2 = 0;
    string ans;
    for (int i = 0; i < a.size()+b.size();i++) {
        if(i < a.size())cur+=a[i]-'0';
        //右半部分
        if(i >= b.size())cur-=a[i-b.size()]-'0';
        //后来就一直在减减减
        cur2 += cur*(b[0]-'0');
        //✖️总和
        ans += cur2 % 10 +'0';
        cur2/=10;
        //上一位的进位
    }
    while(ans.size() > 1 && ans.back() == '0') {
    //看看这一位到底有没有数字
    //如果用if判断,注意0特殊情况,会有很多个0输出
        ans.pop_back();
    }
    reverse(ans.begin(),ans.end());
    cout << ans << endl;}
    return 0;
}

F - 水灵灵的小学弟

题解:
取石子小游戏,balalabalala,然后输出胜利选手的名字大写首字母,可以发现俩个人的名字缩写是一样的,所以直接输入输出即可。
代码:

#include<bits/stdc++.h>

using namespace std;
#define int long long
int t;

signed main () {
    cin >> t;
    while(t--) {
        int a,b;
        cin >> a >> b;
        cout << "DHY" << endl;
    }
    return 0;
}

H - 狼狼的备忘录

题解:
n本备忘录,每行给出成员名字,星座信息数量,星座信息,现在要求整理信息,如果星座信息x是y的后缀,只保留y,同一个成员的相同星座信息只保留一个,最后按照成员的名字字典序,星座信息字典序输出,格式要求成员名字 条目数信息 星座信息。
数据不大,可以直接暴力,在后缀方面稍微多写了一会,但其实也可以直接暴力for循环查找,set自动排序去重。
代码:

#include<bits/stdc++.h>

using namespace std;
#define int long long
int n;
map<string,pair<int,int>>mp;
vector<string>s[30];

signed main() {
    cin >> n; 
    int t = 1;
    for (int i = 1; i <= n; i++) {
        string ls;
        cin >> ls;
        mp[ls].first++;
        int p;
        cin >> p;
        if(mp[ls].first!=1) {
            for (int i = 1; i <= p; i++) {
                string la;
                cin >> la;
                s[mp[ls].second].push_back(la);
            }
        }
        else {
            mp[ls].second = t;
            for (int i = 1; i <= p;i++) {
                string la;
                cin >> la;
                s[t].push_back(la);
            }
            t++;
        }
    }cout << mp.size() << endl;
    for (auto x :mp) {
        cout << x.first << ' ';
        set<string>ls;
        sort(s[x.second.second].begin(),s[x.second.second].end());
        for (auto y:s[x.second.second]) {
            bool st = true;
            for (auto z:s[x.second.second]) {
                if(z.length() <= y.length())continue;
                bool stt = true;
                for (int i = 0; i < y.length(); i++) {
                    if(z[z.length()-1-i]!=y[y.length()-1-i]){
                        stt = false;
                        break;
                    }
                }
                if(stt){
                    st = false;
                    break;
                }
            }
            if(st) {
                ls.insert(y);
            }
        }
        cout << ls.size() << ' ';
        for (auto x : ls) {
            cout << x << ' ';
        }
        cout << endl;
    }
    return 0;
}

I - 重生之zbk要拿回属于他的一切

题解:
给出一个字符串s,求其中子串chuan的数量。
直接暴力即可。
代码:

#include<bits/stdc++.h>

using namespace std;
#define int long long
int n;
string s;

signed main() {
    cin >> n;
    cin >> s;
    int ans = 0;
    for (int i = 0; i <= n-5; i++) {
        if(s[i] == 'c' && s[i+1] == 'h' && s[i+2] == 'u' && s[i+3] == 'a' && s[i+4] == 'n')ans++;
    }
    cout << ans << endl;
    return 0;
}//这是我一直以来的写法,但我忽然意识到一个问题,万一它特别长的话其实有点浪费时间,所以再给出一种写法
#include<bits/stdc++.h>

using namespace std;
#define int long long
int n;
string s;

signed main() {
    cin >> n;
    cin >> s;
    int ams = 0;
    for (int i = 0; i < n; i++) {
        string g = s.substr(i,5);
        //字符串的一些基本应用,本来想用find发现并不方便,而且大家都用的这个不知道为什么
        if(g == "chuan")ams++;
    }
    cout << ams << endl;
    return 0;
}

J - 这是签到

题解:
给出n行m列的行列式,求从(1,1)开始构成的最大的行列式。
数据较小,直接暴力即可,注意行列式的计算,全排列。
(我的代码太冗余了,给出示意代码)
代码:

#include<bits/stdc++.h> 
#define int long long
#define ull unsigned long long
using namespace std;
typedef pair<int,int>PII;
typedef pair<int,PII>PPI;
const int N=2e5+7;
const int N1=1e7;
const int M=1e9+7;
const ull mask = std::chrono::steady_clock::now().time_since_epoch().count();
const int M1=19260817;
const int base=233;
const int base1=131;
int ans[N];
int A[15][15];
int p[10];
int get(int a[],int n)
{
	int sum=0;
	for(int i=1;i<=n;i++)
	{
		for(int j=i+1;j<=n;j++)
		{
			if(a[i]>a[j])sum++;
		}
	}
	return sum;
}
void solve()
{
	int n,m;
	cin>>n>>m;
	for(int i=1;i<=n;i++)
	{
		for(int j=1;j<=m;j++)
		{
			cin>>A[i][j];
		}
		p[i]=i;
	}
	int mi=1e18;
	for(int k=1;k<=max(n,m);k++)
	{
	//每一维的值
		int sum=0;
		do{
			int an=get(p,k);
			//逆序对数量
			int mul=pow(-1,an);
			for(int j=1;j<=k;j++)
			{
				mul*=A[j][p[j]];
			}
			sum+=mul;
			//加上所有的情况
		}while(next_permutation(p+1,p+1+k));
		mi=min(mi,sum);
	}
	cout<<mi<<"\n";
	
}
signed main()
{
	std::ios::sync_with_stdio(false);
	//	cin.tie(0);cout.tie(0);
	int _=1;
	//	cin>>_;
	while(_--)
	{
		solve();
	}
}

从零构建:openEuler WSL下的ARM交叉编译工具链自动化部署方案 本文详细介绍了在openEuler WSL环境下使用Ansible自动化部署ARM交叉编译工具链的方案。通过编写Ansible角色和Playbook,实现从基础环境配置到工具链安装、环境变量设置的一键部署,大幅提升嵌入式开发效率。方案支持多种ARM架构,并扩展了QEMU仿真、VS Code远程开发等实用功能,是嵌入式开发者的高效解决方案。 阅读详情

相关推荐

大红球预警版-精选+自定义板块监控

这是一款简单易用的股票大单资金监控插件,兼容通达信软件,可嵌入分时图或定制版面。它以红绿圆球直观显示主力买卖情况(红球为买,绿球为卖),支持300万以上大单语音播报。插件提供实时资金流向分析、多股同时监控、自定义预警条件等功能,无需L2账号。用户可自由切换图形/列表模式,监控特定板块,并配合幻影软件实现自动交易。虽然上涨股通常红球占优,但需结合其他指标综合判断。该插件完全免费,包含详细视频教程,适合新手使用。

guleba的博客 1795

河南萌新联赛2024第(二)场:南阳理工学院(部分题解)

输入备忘录的本数,每本包含成员名字,以及信息数,接下来是每条信息,信息是长度不超过10的非空字符串,你需要将同一成员的汇集在一起,如果信息a的后缀与完整信息b相同,则删除信息b,最后把名字按字典序排列,然后输出名字,信息数,信息即可。当前数位小于等于b的数位时,相加即为当前数位的结果,当前数位大于b的数位时,依次去除前一位数字,直到只剩最后以为数字计算后结束。t组输入,每组输入两个整数a,b,其中b的每位数字都相等,a,b非常大,0<=a,b<=10。这道题,我用的暴力,数据范围比较小,就列举出来了。

2302_80707071的博客 823

保姆级教程:在Windows 10/11上安装配置KNIME 5.8.0(含中文文本库更新)

本文提供在Windows 10/11系统上安装配置KNIME 5.8.0的详细指南,包括中文文本库更新和性能优化方案。从环境准备、安装流程到中文文本处理能力强化,逐步指导用户搭建高效的数据分析环境,特别针对国内网络环境和中文用户需求提供实用解决方案。

weixin_29081101的博客 670

重生之zbk要拿回属于他的一切--(河南萌新联赛2024第二场)

可叹今日,zbk倒在血泊之中,兄弟联手他的未婚妻背刺了他,他的好兄弟小川夺走了属于他的一切,包括他的未婚妻。他如此爱他的未婚妻,为救他身负重伤,才给了小川可乘之机,但现在回想起来,自己也不过是一只爱情的添狗罢了。但在此之前,他需要在人群中分辨出他复仇的对象是否在其中,因为zbk是个死舔狗,不忍心对未婚妻下手,因此他只需要找到小川就好了。给定一个长度为n的字符串S,S全由小写字母组成,当这个字符串中存在子串“chuan”(不加引号)时,说明小川就在其中,小川可能有很多个,请输出在该字符串SSS中小川的数量。

2302_80983064的博客 732

Unity实时控制佳能单反拍照全流程(附EDSDK 3.6.1配置避坑指南)

本文详细介绍了在Unity中实时控制佳能单反相机进行拍照的完整流程,重点提供了EDSDK 3.6.1的配置与避坑指南。内容涵盖从SDK获取、环境搭建、相机初始化、参数设置到实现拍照控制,并深入探讨了实时取景的延迟优化方案与资源管理,旨在帮助开发者高效集成专业相机,提升AR/VR及摄影测量等应用的视觉输入质量。

go5gopher的博客 184

[pytorch] MedicalNet 3D Resnet预训练模型迁移学习实战:从分割到分类的代码改造

本文详细介绍了如何利用PyTorch对MedicalNet 3D ResNet预训练模型进行迁移学习,从分割任务改造为分类任务。通过解析模型结构、调整分类头、加载预训练权重及优化训练策略,帮助开发者在医疗影像领域快速实现高效模型部署。文章还涵盖了数据预处理、增强技巧及模型轻量化等实用内容。

kmeans3miner的博客 246

河南萌新联赛2024第(二)场:南阳理工学院(ACDEFHIJ赛时加赛后补题)

E.好字符(中等,找循环同构把一个字符串复制加到原来的后面循环遍历长度即可,本题关键在26个字母,在a中出现过的可以标记一下,然后遍历这些标记的字符,每次遍历时,把字符串a和b除这个字符外其他无关字符统一标记为一个特殊字符,再判断b是否能成为a的子串,用kmp即可,ps:题解中提到的字符串最小表示法没听说过,但朋友赛时就是用这个方法做出来了,我到洛谷一看是道蓝题板子,学会了再来分享给大家)C.小w和大W的决斗(中等,算是博弈论板子题吧,sg函数基本上差不多)

2301_78959287的博客 903

Security Onion的部署(超详细)

本文介绍了开源入侵检测系统securityonion的部署

qq_72583325的博客 6070

河南萌新联赛2024第(二)场:南阳理工学院 K - Magic Cube

一天,慢羊羊村长手中的宇宙魔方被擎天柱突然夺走了,并且交给了钢铁侠用来给光之国的等离子火花塔供能,以便提前让电击小子苏醒,来拯救这个荒诞的多元宇宙。宇宙魔方处于乱码状态,身为光之国科研战线第一人的派大星一眼就看出了这块宇宙魔方的能量解码,但苦于没有手指头,所以他只能拜托你来解决这个问题。现在,你肩负着宇宙的希望,派大星的智慧,你将竭尽所能,让这个宇宙在光芒中继续璀璨辉煌。众所周知,宇宙魔方由8个角块,12个棱块,6个中心块组成。其中中心块的相对位置是恒定的,不会随着转动而改变位置。

00后的博客 656

智能水下机器人设计: 基于MATLAB的水下机器人动力学建模和控制系统设计,包括水下环境感知、路径规划和任务执行等

智能水下机器人是指能够在水下自主完成各种任务的机器人,例如探测、勘察、救援等。它具有广阔的应用前景,可用于海洋环境监测、水下考古、海上作业等领域。基于MATLAB的水下机器人设计可以为科研人员和工程师提供强大的建模和仿真工具,帮助他们设计更智能、更高效的水下机器人。智能水下机器人是未来海洋科技发展的重要方向,它将为海洋科学研究、水下考古和海上作业等领域带来新的机遇。MATLAB是一种功能强大的数学和科学计算软件,它可以为智能水下机器人设计提供强大的工具和支持。

走向CTO的路上... 962

手机直连低轨卫星通信:架构、关键技术和未来展望

【摘 要】借助低轨卫星星座全时全域覆盖优势,手机直连卫星通信预期成为6G重要特征之一。首先介绍了手机直连卫星的测试验证、标准化与商业项目发展现状。其次,介绍了基于透明转发、部分可再生处理、完全可再生处理、集成接入和回传的四种手机直连低轨卫星网络架构及组网方式。通过分析手机直连低轨卫星网络场景下高移动性与大传输时延等带来的接入与传输问题,提出对地面移动通信体制进行适应性改进的关键技术方案。最后,探讨了未来手机直连低轨卫星发展发向和潜在思路。通过上述阐述与分析,提供未来发展手机直连低轨卫星通信的可行路径。【关

fzq0625的博客 1708

河南萌新联赛2024第(二)场:南阳理工学院 E - “好”字符

当某个字符 x 在字符串 a 与字符串 b 或 b 的循环同构中出现的所有位置依次对应时(对于字符串的每一位,要么 a 和 b 的这一位都是该字符,要么都不为该字符),称该字符为“好”字符。字符串的循环同构:表示把字符串的左边第一位移到最后一位,新串再进行这样的操作,得到的一些字符串都是原串的循环同构,例如"bcda"、“cdab”、"dabc"都是"abcd"的循环同构。说明 当b的循环同构体为"ababfe"时,字符’a’为“好”字符,当b的循环同构体为"feabab"时,字符’b’为“好”字符。

00后的博客 341

自建 HTML获取腾讯六宫格点选图片验证码素材,实现刷新批量获取图片方便训练

通过自建 HTML 页面,可以方便地获取腾讯六宫格二维码素材,不仅过程简单,而且可以灵活配置各种参数。希望这篇文章能帮助到需要相关素材的小伙伴。如果你有其他问题或者更好的方法,欢迎留言交流!

代码简单说 Vue、JAVA、PHP、Node.js 熟练运用,接口、架构、性能全搞定。 489

补题:河南萌新联赛2024第(二)场:南阳理工学院

思路:b的每一位都相同,所以b可以表示成x*111111...,先将a*x,再根据b的位数将相前移动,该过程可以使用前缀和数组维护。思路:Nim游戏的一种,ai<=100,直接暴力求解sg函数,数组的sg函数的xor值为0则先手必败,否则先手必胜。思路:将a,b倍长,构造循环同构,计算每个字符的哈希值,有哈希值相同的子串,数量就加一。思路:先bfs求各个军队的距离判断是否能够合并,再跑最小生成树得到最短天数。

2301_79959496的博客 481

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

河南萌新联赛2024第(二)场:南阳理工学院 (ADFHIJ)

今天的训练赛打的还行,发挥出我自己应有的水平,不过水平还是有限,该卡的地方还是卡着,有思路却写不出来是最难受的,还是得多刷刷题,提高代码水平。

wh233z的博客 750

锂电池充电器电路设计 里面有电路

锂电池充电器电路设计 里面有电路 3.7V升压到5V电路设计。

(部分)河南萌新联赛2024第(二)场:南阳理工学院

思路:输出DHY即可,赛时没认真看,以为是原神和DHY在玩,一直在推,真是玩原神玩的。思路:用bfs求出每个军队之间的距离,用Kruskal跑一下最小生成树即可。思路:签到题,排序后按题意输出即可。思路:用stl暴力乱搞即可。思路:优化后的高精度。思路:按题意模拟即可。

qq_62001591的博客 342

华为的C语言编程规范.pdf

华为技术有限公司内部技术规范。本规范制定了编写C语言程序的基本原则、规则和建议。从代码的清晰、简洁、可测试、安全、程序效率、可移植各个方面对C语言编程作出了具体指导。

上一篇: Codeforces Round 960 (Div. 2)
下一篇: SMU Summer 2024 Contest Round 7
FS_tar
博客等级 码龄3年 534粉丝 53原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值