2024牛客暑期多校训练营1

Sum of Suffix Sums

Given an array which is initially empty, you need to perform q operations:

Given two non-negative integers t and v, take out the element from the end of the array for t times and then append v to the end of the array. It is guaranteed that t does not exceed the length of the array before this operation

After each operation, let a1,a2,...,an​ be the current array, find the sum of s1,s2,...,snwhere si=ai+ai+1+...+an is the sum of the suffix starting from position iii.

World Finals

The ICPC World Finals are coming. Due to some reasons, the 46th and 47th World Finals will be held simultaneously. For the teams qualified in both competitions, they should choose one to take part in.

The first line contains one integer n (1≤n≤105), denoting the number of teams qualified in the 46th World Finals.

Next n lines each contain one string S (1≤∣S∣≤10) and two integers p,t (1≤p,t≤109)p,,denoting the name, the predicted number of solved problems, and time penalty of one team in the 46th World Finals respectively.

Next one line contains one integer m (1≤m≤105), denoting the number of teams qualified in the 47th World Finals.

Next m lines each contain one string S (1≤∣S∣≤10)Sand two integers p,t (1≤p,t≤109), denoting the name, the predicted number of solved problems, and time penalty of one team in the 47th World Finals respectively.

Output one line containing one integer, denoting the best possible ranking of lzr010506's team.

the competition choices of the double-qualified teams can be arbitrarily arranged by him.

复制代码
#include<bits/stdc++.h>

using namespace std;

#define int long long

struct node{
	string name;
	int s;
	int t;
};

bool cmp(node a, node b){
	if(a.s > b.s)
		return true;
	else if(a.s == b.s)
		return a.t < b.t;
	return false;
}

void solve(){
	vector<node> q1;
	vector<node> q2;
	unordered_map<string, int> st1;
	unordered_map<string, int> st2;
	int n, m;
	cin >> n;
	for(int i = 0; i < n; i ++){
		string a;
		int s, t;
		cin >> a >> s >> t;
		q1.push_back({a, s, t});
		if(!st1.count(a))
			st1[a] = 1;
	}
	cin >> m;
	for(int i = 0; i < m; i ++){
		string a;
		int b, c;
		cin >> a >> b >> c;
		q2.push_back({a, b, c});
		if(!st2.count(a))
			st2[a] = 1;
	}
	sort(q1.begin(), q1.end(), cmp);
	sort(q2.begin(), q2.end(), cmp);
	int cnt1 = 0;
	for(int i = 0; i < n; i ++){
		if(q1[i].name == "lzr010506"){
			cnt1 ++;
			break;
		}
		if(!st2.count(q1[i].name))
			cnt1 ++;
	}
	int cnt2 = 0;
	for(int i = 0; i < m; i ++){
		if(q2[i].name == "lzr010506"){
			cnt2 ++;
			break;
		}
		if(!st1.count(q2[i].name))
			cnt2 ++;
	}

	cout << min(cnt1, cnt2);
	
}

signed main()
{
    ios::sync_with_stdio(false);
    cin.tie(0);
    solve();
    return 0;
}

A Bit Common

Given two integers n and m, among all the sequences containing n non-negative integers less than 2^m, you need to count the number of such sequences A that there exists a non-empty subsequence of A in which the bitwise AND of the integers is 1

Note that a non-empty subsequence of a sequenceA is a non-empty sequence that can be obtained by deleting zero or more elements from AAA and arranging the remaining elements in their original order.

Since the answer may be very large, output it modulo a positive integer q.

The bitwise AND of non-negative integers AAA and BBB, A AND BA\ \texttt{AND}\ BA AND B is defined as follows:

GCD VS XOR

Red Walking on Grid

Red is on a 2⋅n, with some cells being red and others being white.

Red can initially choose a red cell, and at each step, can choose a red cell above, below, to the left, or to the right. When Red leaves a cell, the cell immediately turns white.

Red wants to know the maximum number of steps she can take.

If there are no initial red cells, please output 0.

相关推荐
倒头就睡的小比特3 天前
算法竞赛C++常用的STL
c++·算法
小羊没烦恼!3 天前
初探性能优化——2个月到4小时的性能提升
java·开发语言·windows·算法·c#
猎头南楼3 天前
知识社区推荐系统实践:新用户冷启动与长短期兴趣建模的挑战 资深推荐算法工程师
人工智能·深度学习·算法·机器学习
旖旎夜光3 天前
力控面试题 01.01: 判定字符是否唯一(位运算) —— 题解
c++·学习·算法·leetcode·力控
wzdark3 天前
大规模并行计算中的负载均衡算法研究4
算法
Because_of_Her13 天前
并查集-听课笔记
笔记·算法·并查集
码流子3 天前
高速公路安全监测实践:碰撞监测预警+物联网底座,从感知到处置的闭环
大数据·人工智能·物联网·算法·架构
another heaven3 天前
【算法/C++ MD5算法能否逆解码?原理、C++实现与同类哈希算法对比】
c++·算法·哈希算法
wzdark3 天前
从算法设计模式看编程思维的抽象能力4
算法
2601_962218613 天前
万象生鲜系统称重自动多退少补算法解决生鲜非标品痛点
大数据·数据库·人工智能·python·算法