欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

C++中約數(shù)定理的實(shí)例詳解

 更新時(shí)間:2017年07月08日 10:33:27   投稿:lqh  
這篇文章主要介紹了C++中約數(shù)定理的實(shí)例詳解的相關(guān)資料,需要的朋友可以參考下

C++中約數(shù)定理的實(shí)例詳解

對(duì)于一個(gè)大于1正整數(shù)n可以分解質(zhì)因數(shù):n = p1^a1*p2^a2*......pk^ak,則n的正約數(shù)的個(gè)數(shù)就是  :(a1+1)*(a2+1)*......*(ak+1)

其中a1、a2、a3…ak是p1、p2、p3,…pk的指數(shù)。

用這個(gè)定理求一個(gè)數(shù)的約數(shù)個(gè)數(shù)是非??斓模N出一道訓(xùn)練題目:

hdu 1492 -求約數(shù)的個(gè)數(shù)

貼出代碼:

//約數(shù)定理的 
#include <iostream> 
#include <algorithm> 
#include <iterator> 
#include <cstdio> 
#include <cstdlib> 
#include <cmath> 
#include <cstring> 
#include <vector> 
#include <queue> 
#include <set> 
using namespace std; 
 
#define ll long long 
 
int main() 
{ 
  // freopen("s.cpp","r",stdin); 
 
  ll n; 
  while(scanf("%lld",&n) != EOF) 
  { 
    if(!n) break; 
 
    ll sum = 1; 
    /* x = p1^a1*p2^a2*p3^a3...pk^ak 
    yueshu = (a1+1)*(a2+1)*...*(ak+1)*/ 
    for(ll i = 2; i*i <= n; i++){ 
      int cou = 0; 
      if(n%i==0){ 
        cou = 1; 
        n /= i; 
        while(n%i==0){ 
          cou++; 
          n /= i; 
        } 
      } 
      if(cou != 0){ 
        sum = sum*(cou+1); 
      } 
    } 
    if(n != 1){ 
      sum = sum*2; 
    } 
    if(sum==1 && n==1){ 
      sum = 1; 
    } 
    printf("%lld\n",sum); 
  } 
  return 0; 
} 

感謝閱讀,希望能幫助到大家,謝謝大家對(duì)本站的支持!

相關(guān)文章

  • C++獲取MD5算法實(shí)現(xiàn)代碼

    C++獲取MD5算法實(shí)現(xiàn)代碼

    這篇文章主要介紹了C++獲取MD5算法實(shí)現(xiàn)代碼,這個(gè)是網(wǎng)上扒下來的 作者已經(jīng)無法知道是誰了 ,可以備用
    2019-04-04
  • C++ 獲取URL內(nèi)容的實(shí)例

    C++ 獲取URL內(nèi)容的實(shí)例

    這篇文章主要介紹了C++ 獲取URL內(nèi)容的實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2020-12-12
  • C語言 棧的表示和實(shí)現(xiàn)詳細(xì)介紹

    C語言 棧的表示和實(shí)現(xiàn)詳細(xì)介紹

    這篇文章主要介紹了C語言 棧的表示和實(shí)現(xiàn)詳細(xì)介紹的相關(guān)資料,需要的朋友可以參考下
    2016-12-12
  • C++實(shí)現(xiàn)LeetCode(150.計(jì)算逆波蘭表達(dá)式)

    C++實(shí)現(xiàn)LeetCode(150.計(jì)算逆波蘭表達(dá)式)

    這篇文章主要介紹了C++實(shí)現(xiàn)LeetCode(150.計(jì)算逆波蘭表達(dá)式),本篇文章通過簡(jiǎn)要的案例,講解了該項(xiàng)技術(shù)的了解與使用,以下就是詳細(xì)內(nèi)容,需要的朋友可以參考下
    2021-07-07
  • 詳解C/C++高精度算法的簡(jiǎn)單實(shí)現(xiàn)

    詳解C/C++高精度算法的簡(jiǎn)單實(shí)現(xiàn)

    這篇文章主要為大家詳細(xì)介紹了C/C++中高精度算法(加減乘除)的簡(jiǎn)單實(shí)現(xiàn),方便以后需要時(shí)拷貝使用。感興趣的小伙伴可以跟隨小編一起了解一下
    2022-12-12
  • C++ Boost.Signals2信號(hào)/槽概念

    C++ Boost.Signals2信號(hào)/槽概念

    Boost是為C++語言標(biāo)準(zhǔn)庫提供擴(kuò)展的一些C++程序庫的總稱。Boost庫是一個(gè)可移植、提供源代碼的C++庫,作為標(biāo)準(zhǔn)庫的后備,是C++標(biāo)準(zhǔn)化進(jìn)程的開發(fā)引擎之一,是為C++語言標(biāo)準(zhǔn)庫提供擴(kuò)展的一些C++程序庫的總稱
    2022-12-12
  • C語言全面梳理文件操作方法

    C語言全面梳理文件操作方法

    這篇文章主要為大家詳細(xì)介紹了C語言的文件操作,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助
    2022-05-05
  • Qt控件點(diǎn)擊消息獲取的方法詳解

    Qt控件點(diǎn)擊消息獲取的方法詳解

    本文將利用Qt中的QLabel、QPushButton這兩個(gè)控件,為大家詳細(xì)介紹一下Qt控件點(diǎn)擊消息獲取的方法,文中的示例代碼講解詳細(xì),感興趣的可以了解一下
    2022-06-06
  • C++判斷子序列題目詳解

    C++判斷子序列題目詳解

    這篇文章主要為大家介紹了C++判斷子序列題目,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助
    2021-11-11
  • C++實(shí)例輸入多行數(shù)字到數(shù)組

    C++實(shí)例輸入多行數(shù)字到數(shù)組

    這篇文章主要介紹了C++實(shí)例輸入多行數(shù)字到數(shù)組的相關(guān)資料,這里提供實(shí)例代碼幫助大家學(xué)習(xí)理解,需要的朋友可以參考下
    2016-12-12

最新評(píng)論