QQ登录

只需要一步,快速开始

 注册地址  找回密码
查看: 1901|回复: 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组决赛题解第五题- Q. Q$ O; ~6 {  w. J
    在一个5*5的方格上走边界点,其实也就是6*6的图,从左上角开始走,不走重复点且在12步之内走回左上角点,问方案数
    . b6 i# N; g2 e: W1 ~直接dfs,需要减掉 (0,0)->(1,0)->(0,0)和(0,0)->(0,1)->(0,0),这两个路线都重合了( R9 x9 K3 T; C& I2 h% u+ X8 m/ s
    结果: 208-2=206   
    ; L0 L6 T6 z0 c, ~代码:( Z# G& I) ^2 M0 i& C5 L" w
    #include<bits/stdc++.h>8 h' @: I; y) H0 [# C+ Q; a
    #define mem(a,b) memset(a,b,sizeof(a))/ f$ b2 c8 V. S/ \' z  _) w* h1 Y
    using namespace std;; J- k% D* |' y
    typedef long long ll;& g0 m7 T: C9 r
    const int inf = 0x3f3f3f3f;
    ; o  }/ c5 T& E% Tconst int maxn = 3e5+55555;, U1 h% J6 n" b. y2 J4 ?* O
    const ll mod = 998244353;9 i) ?/ i8 `4 H8 j4 B( o
    const double eps = 1e-7;. q5 l7 M0 P7 h
    1 X" w: s0 x) o# y# D$ |2 T( O# Z
    bool vis[10][10];" [! M8 [0 M: h$ s
    int ne[4][2] = {1,0,-1,0,0,1,0,-1};
    9 q9 u" J0 Q: tint ans;2 s3 H4 D1 [4 }& N$ b

    / |- Z5 ~. \& ]0 i6 ]9 Uvoid output() {
    % u# ~: J. N, ~/ q9 T) ?; F5 L    for(int i = 1;i<= 6;i++) {
    / a- d- [( M8 l+ \* A  \        for(int j = 1;j<= 6;j++) {6 Z" {6 U* i4 d3 c' d, k- y
                cout<<vis[j]<<' ';
    9 A1 E1 }2 R$ }" t        }( g( }3 H7 d+ {+ A9 [; K
            cout<<endl;
    1 y/ y0 |7 v6 n; b* A9 I& S/ F; [+ M    }, f8 J9 i& ~# ^8 A
        cout<<endl<<endl;$ }+ u* o9 p2 \+ G. d
    }
    5 S' K% c' n: L! ^8 X2 c+ N. H
    + k: Q+ c0 H" q4 O% y  c9 B" x0 Evoid dfs(int x,int y,int step) {
    0 l0 Y! [" ]( ^- u; K6 a    if(step> 6) {
    ; l2 j9 ?, z. H4 h+ v% ~0 o  Y        return ;' G* Q6 _9 f6 j8 v# `
        }
    / Z- r5 A5 e) v& z) o/ O$ a    if(x == 1&&y == 1&&vis[1][1] == true) {
    6 d5 ]& Y; i1 E7 X% A% l" E9 Z        ans++;' C/ y0 f# m8 z
            output();6 O5 L" u( G. X- a2 m
            return ;
    4 B+ }5 G" A9 d+ Q. w6 H0 ~  c* @    }: D: E9 q/ x) E) A6 e' }2 g7 q
        for(int i = 0;i< 4;i++) {
    & d5 l' U5 r9 P2 r' p+ I' ~: i        int tx = x+ne[0];
    " R7 q7 B. q; w6 }% e6 }        int ty = y+ne[1];
    1 J' O) R. E9 j! u: k  U- Z9 _, a6 x; f* r4 e3 d$ U
            if(x> 6||y> 6||x< 1||y< 1||vis[tx][ty]) continue;
    5 a! u4 e, e+ `& E9 N        vis[tx][ty] = true;
    9 \4 s  h& {/ O        dfs(tx,ty,step+1);
    1 d4 M! r4 Z3 U6 ?+ n* C5 [% k        vis[tx][ty] = false;
    - |: s/ O7 ^# s5 p1 S    }: L% h1 i! z# Y) l5 S  ^+ E& a$ p
        return ;
    ) Y6 I2 s; ?6 u, `( O/ g% T}
    # n9 Q! O* q3 G- }  Y$ V
    0 ^! c* o& E9 X& v  f" cint main() {- e3 }- t$ ?8 c; R& g. q! B+ b6 g
        dfs(1,1,0);
    9 D2 U' P  H: d# z    cout<<ans<<endl;9 n" L. m0 Q  d3 b
    2 V0 h5 x, U$ [# Z
        return 0;, v* P$ A* {4 X1 A8 K& {7 `/ m0 m
    }8 Z5 Q7 ]3 m; t. w$ u
    --------------------- + a+ q, g# |, l9 @$ n
    作者:nka_kun
    9 ]/ Y6 \1 X2 o) \6 @/ N来源:CSDN ) M1 p( E- s, w" J* }" i1 c5 y  ^

    ' d: v8 D, s7 W7 V3 \* U( p2 S' l6 \: ]( W1 V$ c9 W
    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 09:04 , Processed in 0.464978 second(s), 51 queries .

    回顶部