A - 石子阵列 - 排列组合

链接:https://www.nowcoder.com/acm/contest/157/A
来源:牛客网

时间限制:C/C++ 1秒,其他语言2秒
空间限制:C/C++ 262144K,其他语言524288K
64bit IO Format: %lld

题目描述

xb有m种石子,每种无限个,Ta想从这些石子中取出n个,并按顺序排列起来,为了好看,相邻的石子不能相同。xb想知道有多少种排列的方法。

输入描述:

第一行有两个正整数n,m。

输出描述:

第一行一个整数,表示在m种石子中取出n个的排列方案数模1000000007后的值

示例1

输入

复制

1 1

输出

复制

1

示例2

输入

复制

2 3

输出

复制

6

示例3

输入

复制

3 3

输出

复制

12

备注:

对于100%的测试数据:
1 ≤ n, m ≤ 1000
数据量较大,注意使用更快的输入输出方式。

思路:

啊,这个是排列组合,高中学的都快忘光了qwq

一共有n个位置,第一个位置的选法有m种,第二个位置不能和第一个位置一样,有(m-1)种……第i个位置不能和第i-1个位置一样,有( m-1)种。

答案就是:m*((m-1)^(n-1))

代码如下:

#include<iostream>
#include<cstdio>
#include<algorithm>
#include<string>
#include<cstring>
#include<queue>using namespace std;
const int mod=1000000007;long long pow_mod(long long a,long long b){long long res=1;while(b>0){if(b&1)res=(res*a)%mod;a=(a*a)%mod;b>>=1;}return res%mod;
}
int main(){long long n,m;scanf("%lld%lld",&n,&m);m=(m*pow_mod(m-1,n-1))%mod;printf("%lld\n",m);
}

B - 凤凰 - 并查集

链接:https://www.nowcoder.com/acm/contest/157/B
来源:牛客网

时间限制:C/C++ 1秒,其他语言2秒
空间限制:C/C++ 262144K,其他语言524288K
64bit IO Format: %lld

题目描述

凤凰于飞,翙翙其羽,亦集爰止。

——《诗经·卷阿》

传说,凤凰是百鸟之王。有一天,凤凰要召开百鸟大会,百鸟国是一个由n个节点组成的树,每个节点有一只鸟,开会的节点定在1号节点。每只鸟可以花费1s通过一条边,由于每根树枝(边)的载重有限,只允许一只鸟同时通过。作为会议的策划师,HtBest想知道百鸟国的所有鸟在1点集合最少需要多少秒。

输入描述:

第一行有一个正整数n,表示百鸟国节点个数。
接下来n-1行,第i行两个正整数ai,bi用空格隔开,表示树上节点ai,bi之间有一条边。

输出描述:

第一行一个整数,表示集合最少需要的时间。

示例1

输入

复制

3
1 2
2 3

输出

复制

2

示例2

输入

复制

3
1 2
1 3

输出

复制

1

示例3

输入

复制

4
1 2
2 3
2 4

输出

复制

3

备注:

对于100%的测试数据:
1 ≤ n ≤ 1000000
数据量较大,注意使用更快的输入输出方式。

思路:

与根节点直接相连的子树之间互不干扰,所以我们要求的就是每一棵子树用时的最大值。

对于一棵子树来说,用时就是这棵树上的节点个数,比如说下面这个图,中间的子树一共有6个节点,那么就用时6s,可以这样考虑,这棵子树的6个点都要依次通过A点到达根节点,所以用时6s。

可以通过并查集来求。

代码如下:

#include<iostream>
#include<cstdio>
#include<cstring>
#include<string>
#include<algorithm>
#include<cmath>
#include<queue>
#include<set>using namespace std;
const int maxn=1000005;
int pre[maxn],num[maxn];int f(int x){if(pre[x]==x)return x;pre[x]=f(pre[x]);return pre[x];
}void link(int a,int b){int fa=f(a),fb=f(b);if(fa!=fb){num[fa]+=num[fb];pre[fb]=fa;}
}
int main(){int n;scanf("%d",&n);for(int i=1;i<=n;i++){pre[i]=i;num[i]=1;}int m=n-1,a,b;while(m--){scanf("%d%d",&a,&b);if(a!=1&&b!=1){link(a,b);}}int ans=0;for(int i=2;i<=n;i++){ans=max(ans,num[f(i)]);}printf("%d\n",ans);
}

牛客练习赛24 - AB相关推荐

  1. 牛客练习赛24题解(搜索,DP)

    A题,C题不讲,基础题(但是我要抨击一下这次比赛,卡cin,cout,卡的太狠了,根本就不让过的那种,QAQ) 链接:https://www.nowcoder.com/acm/contest/157/ ...

  2. 牛客练习赛24 C PH试纸

    链接:https://www.nowcoder.com/acm/contest/157/C 来源:牛客网题目描述PH试纸,是一种检测酸碱度的试纸,试纸红色为酸性,蓝色为碱性. HtBest有一个PH试 ...

  3. 牛客练习赛24 B 凤 凰

    链接:https://www.nowcoder.com/acm/contest/157/B 来源:牛客网题目描述凤凰于飞,翙翙其羽,亦集爰止. --<诗经·卷阿> 传说,凤凰是百鸟之王.有 ...

  4. 牛客练习赛24 B凤 凰(并查集考察)

    链接:https://www.nowcoder.com/acm/contest/157/B 来源:牛客网 题目描述 凤凰于飞,翙翙其羽,亦集爰止. --<诗经·卷阿> 传说,凤凰是百鸟之王 ...

  5. 牛客练习赛24(18.08.10)

    问题:凤凰 题目描述 凤凰于飞,翙翙其羽,亦集爰止. --<诗经·卷阿> 传说,凤凰是百鸟之王.有一天,凤凰要召开百鸟大会,百鸟国是一个由n个节点组成的树,每个节点有一只鸟,开会的节点定在 ...

  6. 牛客练习赛68 B.牛牛的算术

    牛客练习赛68 B.牛牛的算术 题目链接 题目描述 牛牛最近学习了取模是什么 于是他看到了下面这一道题: 多次询问:每次询问包含一个正整数 n 要求你输出下列结果 ∏i=1n∑j=1i∑k=1ji×j ...

  7. 牛客练习赛#105(A-D)

    牛客练习赛#105 文章目录 牛客练习赛#105 A.切蛋糕的贝贝 B.抱歉,这没有集美 C.打牌的贝贝 D.点分治分点 A.切蛋糕的贝贝 题意 有一个正n边形,想通过下列的切法切成面积比为1:1:4 ...

  8. 牛客练习赛81 E. 小 Q 与函数求和 1( “简单莫比乌斯反演” ,欧拉函数性质)

    整理的算法模板合集: ACM模板 点我看算法全家桶系列!!! 实际上是一个全新的精炼模板整合计划 牛客练习赛81 E. 小 Q 与函数求和 1( "简单莫比乌斯反演" ) Prob ...

  9. 解题报告(一)C、(牛客练习赛41 F)简单数学题(数论 + FWT)(3.5)

    繁凡出品的全新系列:解题报告系列 -- 超高质量算法题单,配套我写的超高质量题解和代码,题目难度不一定按照题号排序,我会在每道题后面加上题目难度指数(1∼51 \sim 51∼5),以模板题难度 11 ...

最新文章

  1. BroadcastReceiver自学笔记
  2. 【大牛招生】李飞飞的实验室招人了!不限专业,有跨学科研究经验优先
  3. SQL Server的链接服务器技术小结
  4. anki怎么设置学习计划_新媒体企业品牌营销策划公众号运营规划线上推广内容管理sop工作流程计划方案表格模板新手小白零基础怎么学习写作软文涨粉技巧攻略下载...
  5. pr抖动插件_2020最全的8000多款PR插件合集,一键安装
  6. minicom/picocom/cutecom/putty 安装与使用教程
  7. TensorFlow零基础入门指南——计算模型、数据模型、运行模型!
  8. 【文件系统】NTFS、FAT32、exFAT
  9. ARDUINO使用GPRS发送GPS数据到OneNet测试
  10. ISA2006的部署和无人职守
  11. python 读png的值变了_深度学习数据预处理_python批量转换labelme标注的json格式标签为png格式...
  12. 重庆大学计算机软件,重庆大学计算机辅助设计制造软件采购.DOC
  13. dede后台验证码一直错误的处理方法
  14. 计算机派位志愿填报技巧,小升初电脑派位 填报也有技巧
  15. socket里sendto()函数
  16. 常见的用户密码加密方式以及破解方法
  17. Minifilter中 Filter Initiated I/O(过滤器自产生I/O)
  18. win10 NET Framework 3.5(包括.NET 2.0和3.0)错误代码0x800f081f 的解决方法
  19. 小样本学习记录————文本中特征空间的数据增强MEDA: Meta-Learning with Data Augmentation for Few-Shot Text Classification
  20. 【JWT】JWT JWS JWE | 在线JWS解析工具

热门文章

  1. 最新微信hook二次开发C#Demo之获取消息代码
  2. 自己做的创新创业项目管理系统spring mvc+mysql+mybatics毕业设计
  3. Mapper(XML)文件不识别大于号 小于号
  4. 装饰模式--小美的生日蛋糕
  5. 「聚变」前端 客户端,第十七届 D2 终端技术大会来了!
  6. ecg 幅度_ECG信号
  7. raid10模型比raid01模型的冗余度高
  8. Golang - [Iris] 日志写入与日志分割
  9. 19年就业形势怎么样
  10. Ceres Solver安装及bug解决