QQ登录

只需要一步,快速开始

 注册地址  找回密码
查看: 2117|回复: 0
打印 上一主题 下一主题

2019第十届蓝桥杯B组决赛题解第四题

[复制链接]
字体大小: 正常 放大
杨利霞        

5273

主题

82

听众

17万

积分

  • TA的每日心情
    开心
    2021-8-11 17:59
  • 签到天数: 17 天

    [LV.4]偶尔看看III

    网络挑战赛参赛者

    网络挑战赛参赛者

    自我介绍
    本人女,毕业于内蒙古科技大学,担任文职专业,毕业专业英语。

    群组2018美赛大象算法课程

    群组2018美赛护航培训课程

    群组2019年 数学中国站长建

    群组2019年数据分析师课程

    群组2018年大象老师国赛优

    跳转到指定楼层
    1#
    发表于 2019-6-28 15:53 |只看该作者 |倒序浏览
    |招呼Ta 关注Ta
    2019第十届蓝桥杯B组决赛题解第四题
    1 z$ K; T0 H! l+ h) V- }. L! e& D

      a8 D4 S2 K3 Q8 h5 G: f# ]& x题意:  寻找有100个约数的最小数" N3 l9 E; U0 f1 \
    思路:  本质上就是用了素因子分解,假设分解出来的素因子有4种,分别有x1个,x2个,x3个,x4个,第i种因子可以选0个或者1个或者2个或者···或者xi个,那么因子总数为(x1+1)*(x2+1)*(x3+1)*(x4+1)" \/ ~; r7 ^( q/ w8 X
    0 m: Y7 g4 q- y* h, r) {% P% z
    结果:453604 ]) z6 p$ Z1 N
    ; r4 j' E+ b  K2 Y4 D# g
    代码:
    , {, P; \, z6 U- g# L$ |  |) ]. R7 n7 H* g5 U" i! ^
    #include<bits/stdc++.h>( o  [' ^* w5 R
    #define mem(a,b) memset(a,b,sizeof(a))
      i- a4 ]* M8 l, h; _using namespace std;2 g3 z  c# M1 w5 M% Z
    typedef long long ll;
    ! l1 ]; b" b) uconst int inf = 0x3f3f3f3f;6 b$ |0 o: {6 ]; O5 u  S( X; F
    const int maxn = 3e5+55555;+ k! r0 [3 p8 k( z1 I# k' b
    const ll mod = 998244353;' P7 J. T  P5 h
    const double eps = 1e-7;" m2 V; U: u* i/ h$ K* e! H
    / H5 g* `7 y+ D% s3 p( t, p. \: s
    bool vis[123456];
    6 }4 O1 h0 Z3 _( l% E! g6 e; Y! m( kvector<int>prime;
    1 K/ H8 q9 o, }* J5 K
    0 @& D0 m: [/ s0 Lvoid init() { //素数筛
    / _$ x2 {- c2 S) [+ `4 N. ^% H0 g    for(int i = 2;i<= 30000;i++) {" `7 r1 V' \% R3 x
            if(!vis) {4 Y4 b8 m4 p) V0 R
                for(int j = i*i;j<= 30000;j+= i) {
    : o4 i7 U2 ?' y% K5 {! {                vis[j] = true;1 \7 E/ t* T- d6 Z: [
                }
    # Q& A0 P/ H4 ]        }
    - L; G( K  m+ E; ~    }( a6 A0 G$ k, N& N+ B
        for(int i = 2;i<= 2019;i++) {
    & C  B- S: q& }1 S        if(!vis) prime.push_back(i);$ a6 A) r- I& r3 `$ `( U
        }$ H  C$ _& X3 y- N, F# x
        return ;
    " |' e0 V& ^  W' v" S1 h; Z}  T- @0 `% |) T0 K, g

    1 q5 z& v2 v% H% p6 Wint cal(int x) {
    * R: o3 \$ w- ]! q, A    int num[123];  p- s1 I4 i/ ~3 q0 }( L: p, C9 M
        mem(num,0);9 N  a5 s# U* j% ?0 G2 b% z

    7 `3 D9 q. _! A3 y    int k = prime.size(),cnt = 0;, P7 y/ w. a9 E
        for(int i = 0;i< k;i++) { // 分解素因子5 Z, q  r1 i# u
            if(x%prime == 0) {
    # L- H4 X- G' B            cnt++;3 B1 p( K9 K' l9 f5 }5 k
                while(x%prime == 0) {
    3 d0 g1 i, Q& A0 [  o                x/= prime;, O: M4 I2 O1 Y; [5 q4 _
                    num[cnt]++;4 F! d( A; ?( @% h7 _
                }
    # K! y* X% B$ o        }
    2 s' y, f8 c6 e3 J. u$ P0 g    }! i6 ^/ j) W, a  `" z
        int ans = 1;
      E( U- P8 L. H" U; z6 P    for(int i = 1;i<= cnt;i++) { //计算因子总数* P# @/ ~8 G3 I
            ans*= (num+1);& A) p# _$ ?# k/ }" h
        }) I5 D0 D6 M( W' R* t. j. k, K
        return ans;
      w4 r. O( q4 @}$ k1 ?( q4 e2 \$ u
    + q3 k8 Y$ Y/ E3 X5 e
    int main() {4 t3 ^6 v0 v2 o/ w
        init();3 V8 M; N& f' V7 R$ ~
        for(int i = 99;i<= 1000000;i++) {
    2 c, W  @  o- F' O1 {" z) U) k8 k        if(cal(i) == 100) {
    3 F9 L( ^4 `& h$ v# C7 n& o            cout<<i<<endl;
    , o2 b0 V8 H" G% g; ?% W  m            break;) S' x+ I3 \6 U  u  K
            }7 N8 B! \, |3 Q
        }
    " G: l' `; p/ L# y8 }4 a+ [
    : X/ g% L4 G) E  T1 g7 t# ], d5 B    return 0;
    4 w% R, t7 d0 E- Z8 z1 h}5 h7 {' {7 w5 _9 g
    ---------------------
    5 q' s* P9 F% Q0 Q% C) ~1 p# Y; M作者:nka_kun
    : t) b2 F6 r0 g6 z$ e来源:CSDN 7 ]2 M+ _4 x  g- D! {# G

    8 I8 o& ]3 f5 U$ k$ S+ i% C
    ( ]; ~: e% [5 `$ M  l6 O% Z3 i
    3 I4 |1 u. ^3 ?: ?. Q3 p
    zan
    转播转播0 分享淘帖0 分享分享0 收藏收藏0 支持支持0 反对反对0 微信微信
    您需要登录后才可以回帖 登录 | 注册地址

    qq
    收缩
    • 电话咨询

    • 04714969085
    fastpost

    关于我们| 联系我们| 诚征英才| 对外合作| 产品服务| QQ

    手机版|Archiver| |繁體中文 手机客户端  

    蒙公网安备 15010502000194号

    Powered by Discuz! X2.5   © 2001-2013 数学建模网-数学中国 ( 蒙ICP备14002410号-3 蒙BBS备-0002号 )     论坛法律顾问:王兆丰

    GMT+8, 2026-4-20 09:23 , Processed in 0.397807 second(s), 51 queries .

    回顶部