QQ登录

只需要一步,快速开始

 注册地址  找回密码
查看: 1951|回复: 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组决赛题解第五题
    % b* i" p/ f2 V- l: {5 C. Q在一个5*5的方格上走边界点,其实也就是6*6的图,从左上角开始走,不走重复点且在12步之内走回左上角点,问方案数8 z, e+ ^' R3 e! u* m9 r
    直接dfs,需要减掉 (0,0)->(1,0)->(0,0)和(0,0)->(0,1)->(0,0),这两个路线都重合了
    $ L! H% B8 ^. _/ G/ C! y5 V结果: 208-2=206   
    ( C. `7 Y" |5 s/ D) W5 B代码:
    * G) P# C% e) S0 V' S/ T- J3 ^#include<bits/stdc++.h>4 k/ Z) [$ Y+ B. \" o, i1 }" q$ ^
    #define mem(a,b) memset(a,b,sizeof(a))
    0 d  k. }9 y! b5 P- pusing namespace std;( h$ y7 i: J: m- A
    typedef long long ll;* N, ?& S4 I: p( q" {; {. @9 V* I& m
    const int inf = 0x3f3f3f3f;
    * ?8 ^6 x! {1 @$ J  h, Tconst int maxn = 3e5+55555;8 d* {# i, y1 u
    const ll mod = 998244353;8 X4 P2 `' a. g! f% z
    const double eps = 1e-7;$ b; q, K* k, g3 h: w

    9 ?2 ?0 T. A2 Q: a7 P$ |9 r* A* ibool vis[10][10];9 m  h+ ^2 w) O: S. L, V4 B& L
    int ne[4][2] = {1,0,-1,0,0,1,0,-1};9 v& |2 l) Z  v9 \0 t
    int ans;
    # V$ r  c4 G( E* |* J. E0 b+ d( }1 B+ J) E
    void output() {
    ; d- R/ M& p& a/ F% ?  ?    for(int i = 1;i<= 6;i++) {
    7 m: ^1 s  Y8 ^7 @2 G) P6 P        for(int j = 1;j<= 6;j++) {& F0 L$ S" E- T
                cout<<vis[j]<<' ';; L$ f& V3 v/ B# Q- Y* J% L9 A
            }3 y& t! j- |& s& i7 w
            cout<<endl;
    6 m5 C6 |1 m# u1 d# R2 A    }
    0 g5 z8 v  v$ r    cout<<endl<<endl;$ v/ D8 N, {! V. q1 r3 a% u' d
    }
    * k8 W* C5 _5 V' ~: \+ O$ ?9 F) E. A
    void dfs(int x,int y,int step) {$ n- h; y" P3 K5 G! b
        if(step> 6) {6 X5 s% ?2 z/ i4 o
            return ;0 L% \5 \  @3 V2 V& W* w, y
        }' u( l) V3 ~: W  d6 ]" e
        if(x == 1&&y == 1&&vis[1][1] == true) {  l" }+ B+ N' ?, Q4 |6 x+ h
            ans++;" q$ `" l0 T3 X. r3 c/ @
            output();" m1 J# n( ]& d" I* {
            return ;
    : w- B: k; P) l. C7 {    }
    : D& A5 O; C! t+ z+ C7 N- t4 m! e    for(int i = 0;i< 4;i++) {' [/ |7 ?7 C7 R
            int tx = x+ne[0];
    . }( G4 n$ m& @) f* c' _        int ty = y+ne[1];
    . t1 D( b' n9 i5 a2 D9 [5 [- M5 w: d; ]" N0 R5 R6 Q. Z4 K
            if(x> 6||y> 6||x< 1||y< 1||vis[tx][ty]) continue;
    4 T' [( v) j% R4 \4 [- r        vis[tx][ty] = true;% R' Q/ _6 O! ?
            dfs(tx,ty,step+1);
    , Q, q/ o& a" r7 h; x        vis[tx][ty] = false;
    % m" h- o8 k% Z0 v3 l3 u    }
    . X* r0 c6 ~" D: V  N6 w+ h    return ;% p% m6 Y; b4 d* z2 u6 u
    }
    : Y5 d' T& S' j5 S
    5 o6 P5 x1 K9 |( ~int main() {2 N! {' {% g' m7 ~2 T; t' v9 a
        dfs(1,1,0);
    ) I% N0 W! a9 b    cout<<ans<<endl;5 l6 S8 q- b4 B* ?( Z" E" i

    1 i& S: T  K0 H9 Q! N5 Y! e    return 0;6 J6 @: j( d0 F! U5 M0 ~1 h2 U
    }' t# e, N- ?" T2 `" `" A" _
    --------------------- + {: V4 k/ M/ ?5 J% Q7 S
    作者:nka_kun
    1 T% F. g; k  n, q来源:CSDN
    ' I9 l- y& u6 v. D: f4 G1 \/ E! @; [( V. ?
    + C( \* o" Q0 H9 Q
    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-29 17:05 , Processed in 0.566679 second(s), 51 queries .

    回顶部