QQ登录

只需要一步,快速开始

 注册地址  找回密码
查看: 2110|回复: 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 j9 U) }0 N. H, \& s5 r2 l7 k1 d1 F& w

    9 u! F9 [9 d. S  ~题意:  寻找有100个约数的最小数
    # _5 B$ P" X2 F思路:  本质上就是用了素因子分解,假设分解出来的素因子有4种,分别有x1个,x2个,x3个,x4个,第i种因子可以选0个或者1个或者2个或者···或者xi个,那么因子总数为(x1+1)*(x2+1)*(x3+1)*(x4+1)
    ! s* R4 b4 {2 s0 d( j$ X5 g5 T- [# W( S) P7 l" X
    结果:45360
    7 A/ d( b, U7 b; z' y  K$ {7 s7 V1 R% ^  I  @
    代码:
    & \- _4 M. s5 y8 i
    . I7 j' Q+ R4 w. b#include<bits/stdc++.h>9 b% j! f8 ^4 o
    #define mem(a,b) memset(a,b,sizeof(a))
    ; O0 v+ j" L) _3 r0 G/ \using namespace std;
    4 r$ B9 m. K9 \: d' \typedef long long ll;
    3 O8 k( Z/ S2 G, Z- bconst int inf = 0x3f3f3f3f;
    7 n% c  J: m: f8 m+ Xconst int maxn = 3e5+55555;
    & ~0 o: I! h( A1 bconst ll mod = 998244353;
      s. M% w) \1 N* sconst double eps = 1e-7;
    ( h( ^8 g- X3 l. k& w% U+ F; U
    ! q: P+ _9 D( c) _/ x1 Zbool vis[123456];$ I3 o' i4 V; ?8 a5 g2 g: B; d
    vector<int>prime;
    1 J* i' Z0 z3 y! N
    * a* y+ _1 l/ k8 ]& bvoid init() { //素数筛
    , q" @5 u3 N$ ?1 ]- S9 @- D, d    for(int i = 2;i<= 30000;i++) {
    * C4 l  G/ j% @: @& F" _9 n        if(!vis) {7 W  {6 L4 |  [% d0 d
                for(int j = i*i;j<= 30000;j+= i) {2 |' N  J6 F8 o1 v, C2 [
                    vis[j] = true;
    : H/ l/ a. E, `  J2 [! A" A            }
    0 n4 {( c# {+ O' @8 q* ]$ V4 M        }
    - O5 c( {6 w: t: ~    }
    7 g; ~( }. J% i0 B    for(int i = 2;i<= 2019;i++) {
    9 ^/ {  O7 k4 {/ P- y/ p        if(!vis) prime.push_back(i);
    + m- [  T2 N/ U    }
    : I7 h- Z- |/ e    return ;
    ; j. k' Y! V0 J3 K! a3 l}" ?% V. V- t+ I4 U2 K

    0 }) ~# H/ F3 J; R: S* Tint cal(int x) { 8 b$ O. x$ a: c
        int num[123];
    2 [4 c! m/ m3 J    mem(num,0);$ j) ?3 L+ h! u2 ]+ b
    0 e7 C# Q# D$ F9 F- u" g  L1 o
        int k = prime.size(),cnt = 0;# A5 x8 G8 W( Q  D9 f  h$ Y1 o
        for(int i = 0;i< k;i++) { // 分解素因子
    , |% n. n0 y5 ~        if(x%prime == 0) {
    + g1 t6 t9 [/ n            cnt++;
    $ c; a& q% L/ Z) ?4 N            while(x%prime == 0) {
    5 _0 w: A7 r7 R3 |                x/= prime;% `6 U  r% o8 |  [! k
                    num[cnt]++;/ h$ G5 o; [/ q  E3 L
                }
    ! g3 ^7 [& ~8 o1 f' ^- n# V        }
    * U2 |6 M4 q% v9 U& x    }" D$ W/ Y0 C/ A2 Q: S5 \
        int ans = 1;
    ( f+ Z  ~5 h3 p$ ?' M7 E- m$ \    for(int i = 1;i<= cnt;i++) { //计算因子总数
    + |* r7 G6 c8 T5 A! E, e        ans*= (num+1);: d$ m6 E; [! s: x7 u
        }; h& D5 I: G5 v- I) j" A: A
        return ans;
    : f; H6 c% ]$ L: f- O- _! P5 h}- A2 V7 j6 t5 W% }( P# L
    - K9 S7 P1 [# c8 [1 a0 z+ i
    int main() {
    1 C/ @+ J* x( \  F" e* a' a    init();8 C8 U" N; o) K: s. {2 r& c
        for(int i = 99;i<= 1000000;i++) {
    * |# T6 }5 B* ?3 w# [; z) z        if(cal(i) == 100) {; _3 Y' }8 B/ `
                cout<<i<<endl;
    6 M8 I) [  j- M0 R2 ]1 d: o1 F            break;
    5 ~' b1 Y2 d6 |" P( \  T( p% D0 P        }
    ; ?4 P2 h& E! p$ e    }
    ) `+ @/ a4 N3 A4 S; m( p; p/ ?* x, {
        return 0;
    . o0 I" W' q) X- X}' H6 R$ z3 H0 \$ x9 `4 k( [% M
    --------------------- 6 s( x" Y: ]1 d4 @* E6 H
    作者:nka_kun
      P# ]% _; k3 X' N7 l来源:CSDN * R. Q7 p3 P  e+ n3 K6 b
    # _6 g+ f7 q7 W) Y8 i9 A

    ( W) X" o& e; R8 @( I/ I" j& y  g( j' U. [8 K* L. D
    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-13 14:24 , Processed in 0.435567 second(s), 51 queries .

    回顶部