当前位置:网站首页>520 diamond Championship 7-4 7-7 solution
520 diamond Championship 7-4 7-7 solution
2022-07-05 08:51:00 【Qizi K】
Mengxin came to write the solution again
These two questions can be used “ Stack ” To operate the problem ~
7-7 Non zero mantissa of factorials (20 branch )
seek N The first non-zero at the end of the factorial K digit , At the same time, how many zeros are there at the end of the output .
Ideas : Just simulate ~k No more than 9 So use long long that will do . Each simulation takes the last few digits of the operation result ( Because no matter how large the number of digits is, it will not affect the subsequent results ).
P.S. In fact, the number of zeros only needs to be seen 5 How many multiples of ( Because at the end 0 Several heels 2 and 5 The multiple of and 5 Is far less than 2 Multiple But since it is time and time again There is no need to calculate the number of zeros at the end alone See code for details )
#include <bits/stdc++.h>
#define ll long long
using namespace std;
const ll mod = 1e13;
int main(){
int n, k;
cin >> n >> k;
ll now = 1;
int cnt = 0;
for (int i = 1; i <= n; i++){
now *= i;
while (now % 10 == 0){
now /= 10;
cnt++;
}
now %= mod;
}
stack<int> st;
while (k--){
st.push(now % 10);
now /= 10;
}
while (st.size()){
cout << st.top();
st.pop();
}
cout << " " << cnt << endl;
return 0;
}
7-4 Archaic style A+B (15 branch )
Similar to the previous question Use the stack to process each digit ~
For negative numbers , Output one more - No , Then it is converted to positive number processing ~
#include<cstdio>
#include<stack>
using namespace std;
stack<int> s;
int a,b,ans;
int main(){
scanf("%d%d",&a,&b);
ans = a + b;
if(ans < 0) printf("-\n"), ans = -ans;
do{
s.push(ans % 10);
}while(ans /= 10);
while(s.size()){
printf("%d\n",s.top());
s.pop();
}
return 0;
}
边栏推荐
- JS asynchronous error handling
- Multiple linear regression (sklearn method)
- 深度学习模型与湿实验的结合,有望用于代谢通量分析
- C#【必备技能篇】ConfigurationManager 类的使用(文件App.config的使用)
- Infix expression evaluation
- 猜谜语啦(11)
- 猜谜语啦(8)
- Kubedm series-00-overview
- 287. Looking for repeats - fast and slow pointer
- Use and programming method of ros-8 parameters
猜你喜欢

Wechat H5 official account to get openid climbing account

Guess riddles (2)
![[matlab] matlab reads and writes Excel](/img/80/78e4c7fcd27473526e480d4b930e2c.jpg)
[matlab] matlab reads and writes Excel
![[daiy4] copy of JZ35 complex linked list](/img/bc/ce90bb3cb6f52605255f1d6d6894b0.png)
[daiy4] copy of JZ35 complex linked list

Ros-10 roslaunch summary

Guess riddles (11)

Run menu analysis

Typescript hands-on tutorial, easy to understand
![C [essential skills] use of configurationmanager class (use of file app.config)](/img/8b/e56f87c2d0fbbb1251ec01b99204a1.png)
C [essential skills] use of configurationmanager class (use of file app.config)

猜谜语啦(4)
随机推荐
Wheel 1:qcustomplot initialization template
Redis实现高性能的全文搜索引擎---RediSearch
C# LINQ源码分析之Count
The combination of deep learning model and wet experiment is expected to be used for metabolic flux analysis
An enterprise information integration system
JS asynchronous error handling
Programming implementation of ROS learning 6 -service node
Numpy 小坑:维度 (n, 1) 和 维度 (n, ) 数组相加运算后维度变为 (n, n)
Latex improve
深度学习模型与湿实验的结合,有望用于代谢通量分析
某公司文件服务器迁移方案
猜谜语啦(8)
Infix expression evaluation
Adaboost使用
猜谜语啦(10)
Illustrated network: what is gateway load balancing protocol GLBP?
Use and programming method of ros-8 parameters
[牛客网刷题 Day4] JZ35 复杂链表的复制
Programming implementation of ROS learning 5-client node
Guess riddles (11)