QQ登录

只需要一步,快速开始

 注册地址  找回密码
查看: 2165|回复: 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 E( `( o! C1 F' G3 @; i' F8 q' m( k, M/ f- u# [
    题意:  寻找有100个约数的最小数
    & R) q, W4 r; u' p思路:  本质上就是用了素因子分解,假设分解出来的素因子有4种,分别有x1个,x2个,x3个,x4个,第i种因子可以选0个或者1个或者2个或者···或者xi个,那么因子总数为(x1+1)*(x2+1)*(x3+1)*(x4+1)
    / E* l9 ^9 N3 o2 Q, D- C
    % N7 H3 Y2 G& s3 x8 J" |, G结果:45360
    $ L3 P* B0 S, c( V9 h  n- G, L8 k! R8 S: b, x. e
    代码:
    1 U  J4 p0 f% d+ |! s1 t" {. M4 M; Y5 s7 ^
    #include<bits/stdc++.h>
    0 i+ M8 y8 z  F+ Y#define mem(a,b) memset(a,b,sizeof(a))2 {8 `. X& j5 f/ E$ s5 Z3 M, P+ C
    using namespace std;
    : G6 R0 N$ T/ H9 atypedef long long ll;& G9 ~% M- X. i# Q# G
    const int inf = 0x3f3f3f3f;
    + d4 g& ]- R8 g2 r7 dconst int maxn = 3e5+55555;
    0 Q, b+ t0 C0 M1 y7 t# vconst ll mod = 998244353;
    7 d% y, b, l' [9 g& \$ }const double eps = 1e-7;
    " d7 F( I8 X/ b4 ?" r+ G
    $ w0 W* _! C; q" Nbool vis[123456];0 i6 U% F$ d! O/ Q7 F9 r- b
    vector<int>prime;7 h% j" k. d. v4 H2 c9 P, [

    ( x* H. R9 t2 o. rvoid init() { //素数筛' E- P: j; B" T+ H1 E& V
        for(int i = 2;i<= 30000;i++) {* s0 }0 |$ M+ S
            if(!vis) {) j2 p1 ]* ~0 z
                for(int j = i*i;j<= 30000;j+= i) {+ \0 q  X: Q8 p, {+ @% q- e" k
                    vis[j] = true;& L) t/ X; ], Y1 S' ~
                }
    - f4 e+ W5 C, x% v1 S! t        }
    / f( P  \& j, t( w" p1 x: b    }
    5 Y( w, K. [( d3 U    for(int i = 2;i<= 2019;i++) {
    ! j& n1 c) ?7 b) _        if(!vis) prime.push_back(i);7 f4 E7 z4 S$ Q. x: ?" c2 r
        }
    2 g* c8 V' l$ R( K5 x, T, _    return ;
    : b4 O. y8 S% ?" P2 S& C: G}! ]6 g, I% H. `9 n3 }" }7 e
    , ~$ t; a# L/ d4 K
    int cal(int x) {
    + A6 f8 Q; }% B# J( {0 o/ `6 {    int num[123];
    1 m" Q$ {7 d% V1 i    mem(num,0);! c+ h6 n; o* A* K- P% X% @
    " S: h% A7 i# ^7 E
        int k = prime.size(),cnt = 0;
    7 ?( s2 ~' e0 E; c    for(int i = 0;i< k;i++) { // 分解素因子
      Y/ b/ k. ]0 h5 n9 k; X        if(x%prime == 0) {
    ; i  f8 S8 m, t            cnt++;
    4 A2 I! P/ l. S2 _% |* m8 ~            while(x%prime == 0) {
    0 w$ O( w  ]4 a) S' a. t                x/= prime;
    1 B8 Q4 O+ c: f4 u9 ~6 B, e                num[cnt]++;
    6 T1 j$ V, s) m* K1 l6 N# d+ b/ L            }
    3 B) b, t, V9 @& B9 U        }
    ' V, }8 X0 M% Q3 o, e" x3 X  p    }2 S9 R9 j- J2 x( |5 y
        int ans = 1;7 [" @$ N$ V3 A8 y* w! ]& b
        for(int i = 1;i<= cnt;i++) { //计算因子总数. t) }0 B- K- {6 [1 u  \1 P
            ans*= (num+1);
    $ I8 p; M0 _: `* v: {    }
    ! w. ~7 V# M- m7 t+ S% F! _    return ans;
    ) Q* I* o2 u: o4 H# M}2 z8 s4 `5 B3 J- `7 `, y3 ^% v/ R

    + W4 h% s( e5 X6 I" Oint main() {& k' ^6 v6 {$ j; H
        init();
    9 @; F) M( |4 Q    for(int i = 99;i<= 1000000;i++) {4 ]- F1 r( p, m
            if(cal(i) == 100) {; D9 S  o9 \; V8 M7 Z0 g
                cout<<i<<endl;
    7 r1 ~2 y4 }" W            break;
    : P3 O3 |" E1 E3 W) S3 V" q        }- m" q3 o5 z$ H
        }7 c# i7 @1 Z7 D6 H, T  k

    $ Z9 \2 I& d! ?8 t7 n2 v    return 0;
    5 B. W5 L" S. V' D+ j}
    - S# J% ^- ], g: ?4 ]---------------------
    ; o3 x3 B( [9 {/ B" ~7 Y2 h作者:nka_kun ) u/ P3 G3 P& N" w
    来源:CSDN ( Z6 ]! r6 N8 B4 B9 i& m

    ; Z5 P9 A9 `9 F: F  Z: g; p7 ?% `2 E' M7 Z% W; j. T

    1 M3 _% v* c7 y7 @/ b
    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-31 21:26 , Processed in 0.308711 second(s), 50 queries .

    回顶部