AcWing 1381. 阶乘
生活随笔
收集整理的這篇文章主要介紹了
AcWing 1381. 阶乘
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
轉載地址:
https://www.acwing.com/solution/content/31460/
N 的階乘(記作 N!)是指從 1 到 N(包括 1 和 N)的所有整數的乘積。
階乘運算的結果往往都非常的大。
現在,給定數字 N,請你求出 N! 的最右邊的非零數字是多少。
例如 5!=1×2×3×4×5=120,所以 5! 的最右邊的非零數字是 2。
輸入格式
共一行,包含一個整數 N。
輸出格式
輸出一個整數,表示 N! 的最右邊的非零數字。
數據范圍
1≤N≤1000
輸入樣例:
7
輸出樣例:
4
代碼如下:
#include <iostream> using namespace std; typedef long long LL; int main() {int n;cin>>n;LL res = 1;int d2 = 0,d5 = 0;for (int i = 1;i<=n;i++){int x = i;while(x%2==0) d2++,x/=2;while(x%5==0) d5++,x/=5;res=res*x%10;}for (int i = 0;i<d2-d5;i++){res= res*2%10;}cout<<res<<endl; }總結
以上是生活随笔為你收集整理的AcWing 1381. 阶乘的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: AcWing 126. 最大的和
- 下一篇: 单链表式并查集应用举例