传送门

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

题目描述
Actci偶然发现了一个矿洞,这个矿洞的结构类似与一棵二叉树,Actci发现的矿洞恰好位于根节点处,为了尽快挖掘,Actci找来了她的小伙伴们来帮忙,由于地质原因,每天小伙伴们只能打通到一条到子节点的道路(不消耗时间),也就是说每天一个节点只能向一个子节点建设道路,走一条路需要一天的时间,当发现一条道路后,会有一部分小伙伴选择留下来继续勘测,假设小伙伴们有无数个,树的深度足够大,问第n天最多共建设几条道路。
链接:https://ac.nowcoder.com/acm/contest/280/A
来源:牛客网

输入描述:
一行,一个数n。
输出描述:
一行,一个数表示最多建设的道路数,答案对 10000000007 取模。
示例1
输入

2

输出

3

说明

样例解释:
设n号点的子节点编号为n×2和n×2+1,根节点编号为1.
第一天1->2,在1,2处留有一部分人,道路数为1。
第二天1->3,2->4,在2,3,4处留有人,道路数为3.

示例2
输入

100

输出

6531708670

备注:

数据范围:
对于100%的数据保证 n ≤ 5×106

找规律

#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
const ll mod=10000000007;
ll n,s1,s2,t;
ll f[10000010],ans;
int main() {cin>>n;f[1]=1;f[2]=2;for(int i=3;i<=n;i++) f[i]=(f[i-1]+f[i-2])%mod;for(int i=1;i<=n;i++) ans=(ans+f[i])%mod;cout<<ans<<endl;return 0;
}

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

输入描述:
一行,一个数 a。
输出描述:
两行。
第一行输出 Yes 或 No,表示这个数是否是这四个数中一个或几个数的倍数。
第二行,a是哪些数的倍数,每个数用空格隔开(顺序从小到大),若第一行为 No 则不用输出。
示例1
输入

123456789

输出

   Yes3

示例2
输入

2341232402462055420

输出

Yes
3 5

示例3
输入

9741427

输出

No

字符串模拟大数运算

#include <bits/stdc++.h>
using namespace std;
typedef long long LL;
const int maxn = 1e4 + 10;const LL inf = 0x3f3f3f3f;char s[maxn];
int a[11];bool isok(int k){int tem = 0;for (int i=0; s[i]!='\0'; i++)  tem = (tem * 10 + (s[i] - '0')) % k;if (tem == 0)  return true;else  return false;
}
int main(){scanf("%s", s);int k = 0;for (int i=1; i<=4; i++){int x;if (i == 1)  x = 3;else if (i == 2)  x = 5;else if (i == 3)  x = 8;else if (i == 4)  x = 11;if (isok(x))  a[++k] = x;}if (k == 0)  puts("No");else {puts("Yes");for (int i=1; i<k; i++)  printf("%d ", a[i]);printf("%d\n", a[k]);}return 0;
}

链接:https://ac.nowcoder.com/acm/contest/280/C
来源:牛客网

题目描述
Actci上课睡了一觉,下课屁颠屁颠的去找数学老师补课,问了老师一个题目:
给出两个数a,b,问a和b的全部公约数是什么?
数学老师一看这道题太简单了,不屑回答,于是就交给了你。
输入描述:
一行两个数a,b.
输出描述:
a和b的全部公约数,每个数字之间空格隔开。
示例1
输入

25 37

输出

1

示例2
输入

25 100

输出

1 5 25

备注:

对于100%的数据,1 ≤ a,b ≤ 1013

两个数的乘积等于这两个数的最大公约数与最小公倍数的乘积。

假设两个数为 a和b,他们的最大公约数是a/c,
那么他们的最小公倍数为 (a/c) a/(a/c) * b/(a/c)。
化简后得: b!c
所以 最大公约数 乘以 最小公倍数 = (a/c) * (b
c) =a*b

两个数的最大公因数一定是这两个数的因数,两个数的最小公倍数一定是这两个数的倍数,
所以两个数的最小公倍数一定是它们的最大公因数的倍数;

那么两个数的公因数一定是两个数的因数,两个数的最小公倍数一定是这两个数的倍数。所以两个数的最小公倍数一定是他们因数的倍数。

#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
const int maxn = 1e6+7;
ll gcd(ll a,ll b)
{if(b==0) return a;return gcd(b,a%b);
}
set<ll> ans;
ll a,b;
int main()
{cin>>a>>b;ll g = gcd(a,b);for(ll i=1;i*i<=g;i++){if(g%i==0){ans.insert(i);ans.insert(g/i);}}for(auto it = ans.begin();it!=ans.end();++it){cout<<*it<<" ";}return 0;
}

链接:https://ac.nowcoder.com/acm/contest/280/D
来源:牛客网

题目描述
夕阳西下,匆匆忙忙间,SSJ一天的课程已经全部上完了,肚子咕咕开始叫了,坐上回家的公交车,可是SSJ今天好像有点迷,据说今中午吃饭时没去食堂,走着走着,外边景色好美啊,啊?我好像没走过这,完了,我好想迷路了。
公交车到了终点站,SSJ下车了,内心无比紧张,回不去了,一阵冷风吹过,瑟瑟发抖,emm…,那是一张地图?地图上有啥大家都明白,SSJ现在已经饿得无力思考了,请你帮他设计一条最快回家的路下,他要快点回家吃xxx。
输入描述:
第一行四个数n,m,s,t。(分别表示有地图上n个地点,m条道路,SSJ在s处,他家在t处)第2-m+1三个正整数,f,u(某条路起点),v(到达点),w(路径距离)。(f为1或0,0表示这条道路上有恶狗拦路,SSJ已无力与恶狗打斗了,所以他要避开这些道路,1表示此条道路无危险)。
输出描述:
第一行一个数表示最短路径长度,若无法回家输出“My gold!!!”(无引号)若可以回家.
示例1
输入

5 7 1 5
0 1 4 4
1 1 3 2
1 1 5 7
1 2 5 10
0 2 3 1
1 3 5 2
1 4 3 7

输出

4

备注:

n≤10000,m≤200000,w≤5000000

优先队列优化的dijkstra模板

#include<bits/stdc++.h>
using namespace std;
typedef long long LL;
const LL inf=1e18+5;
const int maxn=10005;
int n,m,s,t,f,u,v,x,y,z;
vector<int> v1[maxn];
vector<LL> v2[maxn];
bool vis[maxn];LL w,dis[maxn];
priority_queue< pair<LL,int> > que;
void Dijkstra(){while(!que.empty())que.pop();memset(vis,false,sizeof(vis));dis[s]=0;que.push(make_pair(-dis[s],s));while(!que.empty()){x=que.top().second;que.pop();if(vis[x])continue;vis[x]=true;for(size_t j=0;j<v1[x].size();++j){y=v1[x][j],z=v2[x][j];if(!vis[y]&&(dis[x]+z<dis[y]))dis[y]=dis[x]+z,que.push(make_pair(-dis[y],y));}}
}
int main(){while(~scanf("%d%d%d%d",&n,&m,&s,&t)){for(int i=0;i<=n;++i)v1[i].clear(),v2[i].clear();for(int i=0;i<=n;++i)dis[i]=inf;while(m--){scanf("%d%d%d%lld",&f,&u,&v,&w);if(!f)continue;v1[u].push_back(v);v2[u].push_back(w);v1[v].push_back(u);v2[v].push_back(w);}Dijkstra();if(dis[t]==inf)puts("My gold!!!");else printf("%lld\n",dis[t]);}return 0;
}

牛客小白月赛10 A,B,C,D相关推荐

  1. 牛客小白月赛10 D-饥饿

    题目描述 夕阳西下,匆匆忙忙间,SSJ一天的课程已经全部上完了,肚子咕咕开始叫了,坐上回家的公交车,可是SSJ今天好像有点迷,据说今中午吃饭时没去食堂,走着走着,外边景色好美啊,啊?我好像没走过这,完 ...

  2. 牛客小白月赛16 小石的签到题(博弈)

    牛客小白月赛16 小石的签到题 链接:https://ac.nowcoder.com/acm/contest/949/A来源:牛客网 题目描述 输入描述: 共一行,输入一个数 nnn . 输出描述: ...

  3. 牛客小白月赛58 B(暴力)C(思维)D(dp滚动数组优化)

    牛客小白月赛58 感觉没什么意思,这场月赛出题人有点问题. B 题意:给定一定的数据填充顺序和每一个填充层的名称,只有填充满了上一层才可以填充下一层. 但是每一层又属于某一个大层,一个大层中包含了若干 ...

  4. 牛客小白月赛60(A~C)题解

    原题地址:牛客小白月赛60_ACM/NOI/CSP/CCPC/ICPC算法编程高难度练习赛_牛客竞赛OJ 题目A:小竹与妈妈 题意:输出(x-b)/a即可,没什么好说 代码: #include< ...

  5. 牛客小白月赛5 I.区间 (interval)

    牛客小白月赛5 I.区间 (interval) 题目链接 题目描述 Apojacsleam喜欢数组.他现在有一个n个元素的数组a,而他要对a[L]-a[R]进行M次操作:操作一:将a[L]-a[R]内 ...

  6. 牛客小白月赛22 D.收集纸片

    牛客小白月赛22 D.收集纸片 题目描述 我们把房间按照笛卡尔坐标系进行建模之后,每个点就有了一个坐标. 假设现在房子里有些纸片需要被收集,收集完纸片你还要回归到原来的位置,你需要制定一个策略来使得自 ...

  7. 牛客小白月赛2 H.武

    牛客小白月赛2 H.武 题目链接 题目描述 其次,Sεlιнα(Selina) 要进行体力比武竞赛. 在 Sεlιнα 所在的城市,有 NNN 个街区,编号为 1∼N1 \sim N1∼N,总共有 N ...

  8. 牛客小白月赛7 I.新建 Microsoft Office Word 文档

    牛客小白月赛7 I.新建 Microsoft Office Word 文档 题目链接 题目描述 CSL正在学习<计算机办公自动化>文件的建立与删除. CSL发现,当他新建一个word文档时 ...

  9. 牛客小白月赛5 D.阶乘(factorial)

    牛客小白月赛5 D.阶乘(factorial) 题目链接 题目描述 求 1!∗2!∗3!∗⋯∗n!1!*2!*3!*\cdots*n!1!∗2!∗3!∗⋯∗n! 的末尾有多少 000 ? 输入描述: ...

最新文章

  1. C语言运算符的优先级
  2. 人人都会Vue,你的优势在哪里?
  3. python使用缩进来体现代码之间的逻辑关系-Python 使用缩进来体现代码之间的逻辑关系 ....
  4. HTML和URL比较
  5. JAVAEE框架之Spring JdbcTemplate
  6. pyecharts学习(part3)--简单图表绘制及参数优化
  7. 我也不知道该咋分类--莫队算法
  8. Android之matrix类控制图片的旋转、缩放、移动
  9. IDEA 自动删除无引用依赖
  10. Oracle 查看 表 存储过程 触发器 函数 等对象定义语句的方法
  11. php socket发数据打印,PHP向socket服务器收发数据的方法
  12. 曼联刷新132年队史纪录
  13. mysql 数据库编码怎么看_mysql查看数据库编码
  14. 记一次使用EasyExcel出现Convert excel format exception.You can try specifying the ‘excelType‘ yourself
  15. w ndows10家庭版和企业版谁好用,Windows10系统哪个版本好?Win10家庭版和专业版的区别介绍...
  16. Spring Cloud Bus-用法和意义
  17. JavaFX源码分析实战:如何设置窗体标题小图标和任务栏图标
  18. IBM X60驱动程序的安装
  19. 物联网开发笔记(54)- 使用Micropython开发ESP32开发板之控制MG90S舵机
  20. 你可能学了假流程图,7步教你绘制知识点汇总流程图

热门文章

  1. 外骨骼机器人(一):Lokomat核心技术简介
  2. synchronized 和 AQS
  3. linux库怎么安装路径设置,Linux libtins 库安装教程
  4. MATLAB 数据分析方法(第2版)2.1 基本统计量与数据可视化
  5. 7.3 习而学与CDIO,来自工程教育思想的启示——《逆袭大学》连载
  6. 工业元宇宙三人行系列直播活动第五场在北京举办
  7. R语言学习笔记(概念、公式及R函数)
  8. Deep Biaffine Attention for Dependency Parsing
  9. 数据分析总结一:数据分析思维
  10. 《武道神尊》12.29上线链游玩家|放置挂机、轻松修真