当前位置:网站首页>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;
}
边栏推荐
- Business modeling of software model | overview
- 使用arm Neon操作,提高内存拷贝速度
- [Niuke brush questions day4] jz55 depth of binary tree
- Run menu analysis
- Halcon blob analysis (ball.hdev)
- Bit operation related operations
- 猜谜语啦(8)
- JS asynchronous error handling
- Typescript hands-on tutorial, easy to understand
- Halcon: check of blob analysis_ Blister capsule detection
猜你喜欢
Xrosstools tool installation for X-Series
Confusing basic concepts member variables local variables global variables
Guess riddles (5)
猜谜语啦(7)
Illustration of eight classic pointer written test questions
Typescript hands-on tutorial, easy to understand
Digital analog 1: linear programming
Guess riddles (2)
Install the CPU version of tensorflow+cuda+cudnn (ultra detailed)
猜谜语啦(142)
随机推荐
Xrosstools tool installation for X-Series
Business modeling of software model | object modeling
File server migration scheme of a company
319. 灯泡开关
Basic number theory - factors
MPSoC QSPI Flash 升级办法
Characteristic Engineering
Chris LATTNER, the father of llvm: why should we rebuild AI infrastructure software
Business modeling | process of software model
ABC#237 C
Infix expression evaluation
Guess riddles (142)
[formation quotidienne - Tencent Selection 50] 557. Inverser le mot III dans la chaîne
使用arm Neon操作,提高内存拷贝速度
golang 基础 ——map、数组、切片 存放不同类型的数据
Oracle advanced (III) detailed explanation of data dictionary
Illustration of eight classic pointer written test questions
Wechat H5 official account to get openid climbing account
图解八道经典指针笔试题
kubeadm系列-01-preflight究竟有多少check