QQ登录

只需要一步,快速开始

 注册地址  找回密码
查看: 1902|回复: 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:58 |只看该作者 |倒序浏览
    |招呼Ta 关注Ta
    2019第十届蓝桥杯B组决赛题解第五题
    ; K, \$ a: e# v; A' h0 }: ^; E  ]9 w" _在一个5*5的方格上走边界点,其实也就是6*6的图,从左上角开始走,不走重复点且在12步之内走回左上角点,问方案数) Z4 G; q" n1 g. S
    直接dfs,需要减掉 (0,0)->(1,0)->(0,0)和(0,0)->(0,1)->(0,0),这两个路线都重合了
    6 u# t6 Y& R1 ^6 j$ s结果: 208-2=206    : I& ]+ y# ^( w) U6 I
    代码:, o/ [6 }& M+ k  Z' |
    #include<bits/stdc++.h>7 c! V4 L2 U/ N
    #define mem(a,b) memset(a,b,sizeof(a))
    3 g2 y* Z3 [# P. s- u8 fusing namespace std;0 [% [# D; n- w; B* q
    typedef long long ll;' M+ m9 o8 q/ \" L/ N( s+ h1 [
    const int inf = 0x3f3f3f3f;
    2 X0 e4 r5 i7 _0 C1 O1 gconst int maxn = 3e5+55555;
    2 {1 z+ P: A# [* ?6 Tconst ll mod = 998244353;* p; f+ g- ?+ O
    const double eps = 1e-7;
    6 I& K* z- O: J& V: e: L7 H% T5 C- B( ~4 v: [8 S* S8 }  `
    bool vis[10][10];
    . z8 x* z/ v( Y4 tint ne[4][2] = {1,0,-1,0,0,1,0,-1};
    7 |$ _& j1 R) {9 J+ r6 q- b7 Cint ans;
    8 e  T5 k2 i' s* r8 ]
    8 P5 S, t. b$ _, T- o* xvoid output() {4 j4 A( V0 }  p2 j- I- u0 `
        for(int i = 1;i<= 6;i++) {5 K# _/ u7 ~$ }
            for(int j = 1;j<= 6;j++) {
    ' n+ g& \4 a, D2 x7 c1 Y$ M! v7 @  w            cout<<vis[j]<<' ';
    2 n# M. C# O0 E: |  z8 E        }! g, k7 S$ Y  [  j" I9 M7 P% v8 V
            cout<<endl;' `  f! L% @+ m( i
        }
    * S+ |8 {4 g, k- d1 |9 N, I    cout<<endl<<endl;/ @6 ]/ q! v( R
    }
    7 m3 `# R/ K; q; f6 [4 o  d& J) r% A. j$ U, T- w8 f4 J0 i  x# b, d
    void dfs(int x,int y,int step) {5 [$ C' t  M3 y' R, K
        if(step> 6) {
    3 f4 O6 W! C2 H6 Z# R        return ;
    " @  I% Q5 p1 Y    }! ~) d2 L1 L0 [* w0 V
        if(x == 1&&y == 1&&vis[1][1] == true) {- G! N: R) C7 v& j! Q  q7 n
            ans++;7 `% q& K8 K/ e. d; M# a
            output();
    4 f% k" |' G4 Y/ ]- u" ~2 f        return ;
    2 q) R& i) i0 l  e( ]    }5 G% i6 R3 N# ?/ o( d& l; H4 R
        for(int i = 0;i< 4;i++) {* c; _9 Z" W7 o3 E: @# i- c
            int tx = x+ne[0];
    : J9 Q+ k; P+ t# X. ]1 X/ d. g        int ty = y+ne[1];
    / j3 U# A# r/ K4 R, W) V8 ~7 Z7 p
    ! Z1 V7 y+ @$ `( [0 ?8 ~: T        if(x> 6||y> 6||x< 1||y< 1||vis[tx][ty]) continue;
    ' ]" _2 C4 j! Z4 i        vis[tx][ty] = true;
    ) k5 a: `6 Y6 P. |( m2 N        dfs(tx,ty,step+1);. D! h  G5 v- ^! [& ^. f( E
            vis[tx][ty] = false;
    2 M. E& P9 B/ d! }. a2 h5 \3 J6 w    }
    6 I. y7 z' t1 R8 k    return ;# S3 F7 f7 S& R1 J' s  s/ U
    }
    6 e1 O1 f( @: x, l5 i2 ^! {# L$ B
    + O9 }0 d: N, nint main() {6 U9 F+ k3 o- W$ ~  r
        dfs(1,1,0);0 s1 i: V% ]9 ^& P" Z
        cout<<ans<<endl;
    # k, c( f0 O, g9 q! c8 j- P: ^( [& E
        return 0;4 K8 [. ^! O  c+ W4 |
    }
    , z9 R) W' F" ~--------------------- 2 K* L6 v: p$ p3 z/ R/ P
    作者:nka_kun 4 i1 t" A9 y7 b* I
    来源:CSDN 9 d+ Q& D5 s( X! |! q( d3 X. o
    & }* g) `) u. [5 }5 Q1 \- o

    ; I. v5 ?- P5 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-13 14:32 , Processed in 0.529385 second(s), 50 queries .

    回顶部