QQ登录

只需要一步,快速开始

 注册地址  找回密码
查看: 2146|回复: 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组决赛题解第四题
      o! [- o, T& R7 e1 |  X
    2 Y0 C! p+ i8 z, `9 B
    题意:  寻找有100个约数的最小数. D9 r$ |/ J. v: @5 U. s4 N
    思路:  本质上就是用了素因子分解,假设分解出来的素因子有4种,分别有x1个,x2个,x3个,x4个,第i种因子可以选0个或者1个或者2个或者···或者xi个,那么因子总数为(x1+1)*(x2+1)*(x3+1)*(x4+1)5 f/ ]0 E, P$ D( C: v

    / M2 W/ _* ~4 H  L, ?! ~结果:453603 P: b" T: l7 ?6 Q; z# d

    7 z5 z: \7 V2 L  ~6 a代码:- V4 [7 M5 ]* t) a( D9 c  ^+ j

    % l( K  _9 _( b: U' M' E, L, s#include<bits/stdc++.h>9 \  ^: ^, @' x1 O
    #define mem(a,b) memset(a,b,sizeof(a))
    ' J# i, E' t* A$ Iusing namespace std;
    - k- f* r: I- M; htypedef long long ll;
    7 c4 T; R; ^5 M6 _& ?" [const int inf = 0x3f3f3f3f;
    2 J2 m$ k8 a4 Z; h3 o4 Z0 t/ G2 uconst int maxn = 3e5+55555;$ L. ?% g. e5 X" ~. B' d0 P% ~
    const ll mod = 998244353;
    # P* }; E& S) C* N. r5 Hconst double eps = 1e-7;
    * B$ ]$ {- A- _  d% ^3 w. C5 f) {( I
    3 w; O# o, K# s! g0 ^bool vis[123456];3 s: a0 j0 `- ~9 f) ]) H; \
    vector<int>prime;- M0 |/ @* c0 K  _- n$ H

    8 G' o2 |2 ^2 R* @: Evoid init() { //素数筛- L  j7 m% W, `+ l$ e8 b4 [
        for(int i = 2;i<= 30000;i++) {
    & K+ W6 i3 n6 _$ i% h. c" Q3 Q        if(!vis) {5 n. K+ b: T! o( e9 @/ i" o! k
                for(int j = i*i;j<= 30000;j+= i) {6 ?6 m0 r% x) a6 _: ?# G& k8 T
                    vis[j] = true;- ]5 Z( }2 C1 y* N
                }
    $ G/ D4 w; q" V2 p! H6 ]        }
    ' r3 z& \* ]5 u    }
    $ |+ f! o/ T: J0 L7 S# t    for(int i = 2;i<= 2019;i++) {
    & O5 h- R! x& K5 X8 v0 }% x/ R        if(!vis) prime.push_back(i);# J5 j4 n0 H9 D) a! F! h7 x- A
        }
      ~  i9 Q  x4 v; T    return ;8 x7 U- C1 g& d5 o. O
    }! E/ q% W# N! q- S* q

    , f' t+ G+ N. f& zint cal(int x) { $ J3 J; P" |0 x" L
        int num[123];
    8 z3 ]$ d7 E  p- H# m: Y4 T    mem(num,0);
    $ V* N! J' w' T& m+ ~' H) y8 c. I$ W6 T# Q) ?
        int k = prime.size(),cnt = 0;3 R9 ]; v8 D) ]) M* `( s
        for(int i = 0;i< k;i++) { // 分解素因子
    1 G& F6 V; k5 X9 C1 V        if(x%prime == 0) {
    ) H7 A; m- M% ^            cnt++;
    7 }: Z) \7 N: d4 O. Q% y' |$ \            while(x%prime == 0) {4 P) G0 ?. e- J* P+ O& ?. I5 `( |! G
                    x/= prime;$ L  t4 u& k$ R0 x3 X+ |# E
                    num[cnt]++;
    2 A: _' i0 S) V8 Z            }
    2 m2 D5 c. J; b! |5 {0 t4 T        }+ [2 Z- C4 i# ~# t
        }
    / q4 x. _! w( E, c, u8 s    int ans = 1;
    ' W! h6 l+ q; w    for(int i = 1;i<= cnt;i++) { //计算因子总数* A- p3 K6 ~# d6 e
            ans*= (num+1);* P' ~  y! l8 N( v
        }
    6 Q& n$ Z4 A# B9 L; K    return ans;
    9 q  |$ |& q" s. j1 g. j5 P}7 |0 [& D$ m6 @" `, B$ s* Z0 E
    7 ?, G6 R  w, r7 g0 _' ?$ `
    int main() {
    ' {) F" G) C! G5 R3 w    init();
    3 Q1 w8 R& I% K9 a7 {1 Q    for(int i = 99;i<= 1000000;i++) {
    8 j- P, A6 c+ Z! v& P- o/ U        if(cal(i) == 100) {& W' {0 s! U/ R1 ]) V0 I! ~
                cout<<i<<endl;
    ; q7 e2 a' p1 y7 j' G4 Z            break;& q) U8 U- J+ r
            }
    ' Z3 R1 K1 O* I2 o8 V. y- c    }0 J& b: O# |5 q0 p6 Q
    - `: b( \+ t% p3 V& T# [3 `- _& s
        return 0;+ W6 y( h% b/ T: f$ j+ z! F
    }, n+ I4 ]) m$ Z: F: y
    ---------------------
    % o& p! G! H( _% q& b3 U4 X" g) `作者:nka_kun - z" K# W, L* C
    来源:CSDN
    ) X' t% c! W( e8 U8 R! q2 p$ [8 w
    1 b  ^3 R! w+ z5 ~1 C
    4 A" o* N! O% H) J4 x: N+ q
    5 z8 a% R) Z4 j  |# o- ~' |6 g
    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-6-14 18:16 , Processed in 0.310234 second(s), 51 queries .

    回顶部