QQ登录

只需要一步,快速开始

 注册地址  找回密码
查看: 2162|回复: 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组决赛题解第四题
    3 I% @4 w' x8 O% G
    ) x, V! [" _4 r  B" N+ T
    题意:  寻找有100个约数的最小数
    & J" k( s9 D6 n( X思路:  本质上就是用了素因子分解,假设分解出来的素因子有4种,分别有x1个,x2个,x3个,x4个,第i种因子可以选0个或者1个或者2个或者···或者xi个,那么因子总数为(x1+1)*(x2+1)*(x3+1)*(x4+1)" _% m0 N, A: t, c$ U9 I; L

    9 V, u' {1 C+ [& I' x* e3 f3 ^, i# z结果:45360
    1 H5 \6 S# u8 ~! E; \3 z* I& X* g: {# ?9 x# I  t; _- H
    代码:
    6 p( C% F9 G# G5 _" Z5 _, C# H% _" d
    ( `, H6 B- s( {/ x- F#include<bits/stdc++.h>% W0 {* Z1 _7 K; i
    #define mem(a,b) memset(a,b,sizeof(a))
    9 x! V. e, \% uusing namespace std;
    * ^+ T! H) s5 ?2 _$ btypedef long long ll;8 `( L9 h. h: x, M$ ]. G" p
    const int inf = 0x3f3f3f3f;
    5 x, ?; D+ Q, o+ i9 w6 L1 k- T0 |const int maxn = 3e5+55555;
    3 I9 D% n( C% l) q* A9 Z8 H2 Tconst ll mod = 998244353;
    8 c0 }$ b/ ?, Z! [const double eps = 1e-7;0 X& s* j. U/ z! Y% M8 ]
    4 B0 d. b6 T$ B# o
    bool vis[123456];
    & D% g: t' K' s3 Z: l  g6 ^: `vector<int>prime;
    ) r) e: F8 o# V5 ~, n& P
    $ ^9 E% u9 C/ o" f# F- e7 rvoid init() { //素数筛' e) O4 A6 F, c0 @$ l" k" R, a! I! K0 b, m- [
        for(int i = 2;i<= 30000;i++) {- t2 K9 r/ x/ V* x, T
            if(!vis) {
    ) A0 i; [6 k! U; j$ i4 D' Z+ B            for(int j = i*i;j<= 30000;j+= i) {# t; Q3 \  t' ~0 u- R
                    vis[j] = true;
    0 s( P6 l* Q2 g% x7 ^) F0 e7 b            }
    8 b7 O6 o: Z9 k- ^, c% G* t        }
    9 d& @9 h3 }: D    }; F. F7 F' g% @0 b, u# P' O
        for(int i = 2;i<= 2019;i++) {& b' }# N. ]: N2 j. t# ~* t" J' |2 O: U
            if(!vis) prime.push_back(i);* B. T4 f$ o. g7 O* }
        }
    # S* F3 Y( }  {/ \/ j4 ^& X    return ;
    8 J+ x# A5 X" Q& j, M! r: g8 m1 U" M}
    4 n8 I  d% _1 p1 h
    6 i2 H4 I; v9 E/ }2 {6 \int cal(int x) { + u0 u+ s  k3 d* u, H$ R5 q
        int num[123];
    ( u$ T4 {9 n! m( ?    mem(num,0);
    8 Z# m! [4 F3 h. M" Q& r" n! z" ~4 Z8 C6 X5 T# H, a4 T
        int k = prime.size(),cnt = 0;2 }9 v  V  r3 U9 ?0 M
        for(int i = 0;i< k;i++) { // 分解素因子
    - n4 ?/ q3 c+ Z& e% D  x. N        if(x%prime == 0) {# B9 r" F2 p7 G2 d* V
                cnt++;
    % D8 ?: r  I1 \: ]( q1 T2 i% |- p! P& }            while(x%prime == 0) {. c8 M" C8 h: W: l
                    x/= prime;
    8 D- O, C& a7 V$ F9 A% e                num[cnt]++;
    9 z, L' N3 d# A8 x            }
    * v. @3 P( J1 Y        }% F6 X  B* r5 I* {4 I2 [$ a4 y2 r
        }
    * |) |2 V5 a' t' y' y    int ans = 1;
    ! |/ x% `" i! x+ Q/ `3 ?    for(int i = 1;i<= cnt;i++) { //计算因子总数! x" Y. X2 ~2 z- k
            ans*= (num+1);6 {5 A3 J1 Y% A- {* P; P4 W- D0 `
        }1 l, v- N0 F, d9 s
        return ans;6 A4 K& \, l! i) y8 }- ~
    }
    9 G& `4 \! |+ P" h1 r5 v+ @- Y) I* t
    int main() {, V- L! r5 d% n$ u3 ~# p
        init();* T' u7 w' w8 T3 c* P( s/ @/ E* M& u
        for(int i = 99;i<= 1000000;i++) {
    % w+ G, f  }& n9 H( B- l" u; v        if(cal(i) == 100) {1 n" w1 n( O  B  g1 w% x$ X2 c$ N
                cout<<i<<endl;
    7 S; B# l% @5 p' [( n6 l            break;
    . s) @* w7 j1 l7 ?! j5 O        }1 N' H  Q3 i( {1 M; [6 d
        }
    + z( ]; F# ~# \, F5 `4 Z8 s
    & n0 E! u0 H" ?% r- J6 t    return 0;3 Z: e+ v5 p( B. S- {; T/ b
    }
    : j, [: N, S( N# W9 b+ @---------------------
    # e3 _3 t! K/ j. O) q作者:nka_kun + f5 G9 e3 P4 r3 {) Q& \7 O
    来源:CSDN 2 G: F- e0 L/ X! c0 i) @
    6 n/ ~4 C) A" V; d: {

    ) R7 H/ B* \! C9 _: `( r/ {  C% A: n( P7 `4 \
    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-7-29 11:37 , Processed in 0.606819 second(s), 50 queries .

    回顶部