2024“钉耙编程”中国大学生算法设计超级联赛(2)

Rank

 Search Result (hdu.edu.cn)



URL划分 - HDU 7451 - Virtual Judge (vjudge.net)​​​​​​​

这题唯一要注意的就是后面只输出有等号的部分,然后模拟即可。

#include<bits/stdc++.h>
using ll=long long;
using ull=unsigned long long;
using PII=std::pair<double,double>;

#define fir first
#define sec second

const int N=1068576,P=131;

void solve()
{
    std::string s;
	std::cin>>s;
	
	std::string a; 
	int flag=0;
	int cnt=0;
	for(int i=0;i<s.length();i++)
	{
		if(s[i]==':'&&flag==0)
		{
			std::cout<<a<<'\n';
			flag=1;
			i+=2;
			a="";
			continue;
		}
		if(s[i]=='/'){
			if(cnt==0||a.find('=')!=std::string::npos)	std::cout<<a<<'\n';
			cnt++;
			a="";
			continue;
		}
		a+=s[i];
	}
	 
}
signed main()
{
    std::ios::sync_with_stdio(0);
    std::cin.tie(0);
    
    int t=1;
    std::cin>>t;
    while(t--)
    {
        solve();
    } 
    return 0;
}

女神的睿智 - HDU 7454 - Virtual Judge

仔细读题模拟即可。

#include<bits/stdc++.h>
using ll=long long;
using ull=unsigned long long;
using PII=std::pair<double,double>;

#define fir first
#define sec second

const int N=1068576,P=131;

void solve()
{
    std::string s;
	std::cin>>s;
	
	std::map<char,int> mp;
	for(auto i:s)
	{
		mp[i]++;
	}
	if(s[0]==s[4])
	{
		std::cout<<s[0]<<'\n';
	}else{
		ll cnt1=0,cnt2=0;
		for(auto i:s){
			if(i==s[0]) cnt1++;
		}
		for(auto i:s){
			if(i==s[4]) cnt2++;
		}
		if(cnt1>cnt2) std::cout<<s[0]<<'\n';
		else if(cnt1<cnt2) std::cout<<s[4]<<'\n';
		else std::cout<<"N\n";
	}
}
signed main()
{
    std::ios::sync_with_stdio(0);
    std::cin.tie(0);
    
    int t=1;
    std::cin>>t;
    while(t--)
    {
        solve();
    } 
    return 0;
}

传奇勇士小凯 - HDU 7450 - Virtual Judge (vjudge.net)

关于证明一个概率事件的期望次数 - zjp_shadow - 博客园 (cnblogs.com)好文,拜读!

笔记-数学期望 - oier_hzy - 博客园 (cnblogs.com)

首先要算每个点的期望,可以读读上面文章容易知道期望天数为1/p,这里就是15/pi。

因为分母比较难处理,所以我们先预处理出1乘到15的最小公倍数,360360。然后就是把每个数的分母都变成它,因此dfs的时候我们求分子相加的最大值即可。

#include<bits/stdc++.h>
using ll=long long;
using ull=unsigned long long;
using PII=std::pair<double,double>;

#define fir first
#define sec second

const int N=2e5+10,P=131,mu=360360;

int n;
std::vector<int> g[N];
bool st[N];
ull p[N],fz[N];
ull ans=0;

ull lcm(ull a,ull b)
{
	return a*b/std::__gcd(a,b);
} 
void dfs(int x,ull sum)
{
	ans=std::max(ans,sum);
	for(auto &i:g[x])
	{
		if(st[i]) continue;
		
		st[i]=1;
		dfs(i,sum+fz[i]);
		st[i]=0;
	}
}
void solve()
{
	ans=0;
    std::cin>>n;
    for(int i=1;i<=n;i++)
    {
    	g[i].clear();
    	p[i]=fz[i]=0;
	}
    for(int i=1;i<=n-1;i++)
    {
    	int u,v;
    	std::cin>>u>>v;
    	g[u].push_back(v);
    	g[v].push_back(u);
	}
	for(int i=1;i<=n;i++)
	{
		std::cin>>p[i];
		fz[i]=mu/p[i]*15;
	}
	st[1]=1;
	dfs(1,fz[1]);
	
	ull gcd=std::__gcd(ans,(ull)mu);
	
	std::cout<<ans/gcd<<"/"<<mu/gcd<<'\n';
}
signed main()
{
    std::ios::sync_with_stdio(0);
    std::cin.tie(0);
    
//    int l=1;
//    for(int i=1;i<=15;i++) 
//    {
//    	l=lcm(l,i);
//	}
//    std::cout<<l;
//360360
    
    int t=1;
    std::cin>>t;
    while(t--)
    {
        solve();
    } 
    return 0;
}

鸡爪 - HDU 7445 - Virtual Judge (vjudge.net)

绝对不模拟的简单魔方 - HDU 7447 - Virtual Judge (vjudge.net)

在 A 里面找有 C 的 B - HDU 7455 - Virtual Judge (vjudge.net)

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-07-23 09:00:04       94 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-07-23 09:00:04       102 阅读
  3. 在Django里面运行非项目文件

    2024-07-23 09:00:04       83 阅读
  4. Python语言-面向对象

    2024-07-23 09:00:04       92 阅读

热门阅读

  1. spring —— IoC容器(二)

    2024-07-23 09:00:04       25 阅读
  2. Postman 接口测试工具详解

    2024-07-23 09:00:04       22 阅读
  3. Vue中 watch 与 watchEffect 的区别

    2024-07-23 09:00:04       24 阅读
  4. Python题解Leetcode Hot100之回溯

    2024-07-23 09:00:04       23 阅读
  5. 【MySQL进阶之路 | 高级篇】反范式化概述

    2024-07-23 09:00:04       21 阅读
  6. python—爬虫爬取图片网页实例

    2024-07-23 09:00:04       26 阅读
  7. stm32 io输入中断

    2024-07-23 09:00:04       28 阅读
  8. pytorch lightning报错all tensors to be on the same device

    2024-07-23 09:00:04       20 阅读