QQ登录

只需要一步,快速开始

 注册地址  找回密码
查看: 1847|回复: 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组决赛题解第五题$ ^1 t6 u6 W9 ]
    在一个5*5的方格上走边界点,其实也就是6*6的图,从左上角开始走,不走重复点且在12步之内走回左上角点,问方案数
    ' n+ a6 p: A' w! E7 L' L9 w7 G3 ]直接dfs,需要减掉 (0,0)->(1,0)->(0,0)和(0,0)->(0,1)->(0,0),这两个路线都重合了, M+ [5 a" z' K2 L
    结果: 208-2=206   
    9 n( M1 D& i9 B' G/ P5 f0 ~4 i代码:
    * W1 W) q7 g% ~0 X1 l. R, H% ^#include<bits/stdc++.h>
    6 L  d+ U: l* U! D5 d; B/ F/ Q7 o#define mem(a,b) memset(a,b,sizeof(a))
    & i: m/ K; ^3 f; H/ K; Qusing namespace std;
    ( @$ P5 Z- q+ b* q! J# {typedef long long ll;
    - E6 ~0 t5 J) a$ V7 bconst int inf = 0x3f3f3f3f;1 m! m7 a& b$ A
    const int maxn = 3e5+55555;  q8 ]$ c# R4 }; N. W$ A& a* v/ D
    const ll mod = 998244353;
    / f) u" L  f7 u# T- k  w! bconst double eps = 1e-7;6 ~$ @9 h0 z7 [
    9 E1 I7 q* |9 M5 z7 v9 h
    bool vis[10][10];
    6 D4 o2 ?7 P7 a6 Vint ne[4][2] = {1,0,-1,0,0,1,0,-1};# G( I6 Z6 D# e6 n+ R
    int ans;
    1 ~8 C; _  }% I# V. v1 R4 X
    ) n+ S& \3 p  N7 L* s( Svoid output() {% @! e/ Q# C6 F4 A, ~+ R: D# i
        for(int i = 1;i<= 6;i++) {
    $ @9 ~$ g4 {  H# Y! h. P        for(int j = 1;j<= 6;j++) {
    5 A: A, K9 L1 a1 K* k7 a            cout<<vis[j]<<' ';+ P; l& n% P* M9 g* L' r
            }
    # O# }9 T+ \7 |        cout<<endl;  a7 D' {3 L3 c% I
        }
    ; y1 a0 \% e, I' C. J* b( c' Q    cout<<endl<<endl;5 x- F( n/ s$ ~3 O& g
    }- p- p9 i, |% c1 T; A

    ! W6 y3 f$ W5 I6 ovoid dfs(int x,int y,int step) {6 z) g& y* O) h3 `( ~1 q8 R
        if(step> 6) {
    + z( x5 h# U+ }$ t        return ;+ X$ }3 h' i& _" d5 Z  ?. p
        }* \( a4 L+ x4 f* ?0 M% q
        if(x == 1&&y == 1&&vis[1][1] == true) {
    5 t7 R  D3 t+ ?5 D        ans++;
    1 C: g. X8 ~1 n# w2 V        output();
    & P" C0 T8 k; N  f        return ;4 ~7 H2 z# G5 O7 o% Y- x* U
        }
    ; {6 P: n" p6 ^. I8 j    for(int i = 0;i< 4;i++) {" ]) x- y6 V; V) z- Q, q
            int tx = x+ne[0];
    ' B4 Z8 h6 p* T' j; G" S3 ]        int ty = y+ne[1];( @, [) ?# I# k$ f* z7 k) v
    8 V# D: c2 @2 p
            if(x> 6||y> 6||x< 1||y< 1||vis[tx][ty]) continue;
    6 F7 H& E% }4 P: D2 Q2 L" p/ S# V        vis[tx][ty] = true;
    9 X# R0 [8 _7 c$ W  O        dfs(tx,ty,step+1);; [) Q6 G/ N8 ?% k
            vis[tx][ty] = false;
    5 l: M6 I2 Q9 Z4 T' l3 x    }
    9 Z# I) L# C* m  E    return ;
    4 R6 z  T% J: G7 F1 d% S% K}  \( k! U- e4 y2 ?6 J
    # e, s8 Y# D3 A3 C: v" f( V
    int main() {
    1 Q. ^; i3 [3 x' m. s& V    dfs(1,1,0);
    , ?/ o7 b' y' Z8 K- ~) j: M4 T9 R    cout<<ans<<endl;) z( u- A: j# T& \: n) ]

    9 J* Z9 G$ C, k8 I3 }    return 0;+ x+ d. T6 q) n, R/ q
    }# j# s# l0 ?5 ^6 P: l: h
    ---------------------
      v  U3 q- e  C# o4 A作者:nka_kun
    7 {, B- N# |% E9 H; M来源:CSDN 0 i4 G" a- P9 ]: i! Q% J- T" O9 ?
    ' l" i; @$ Q1 k( T

    / K. ?5 H% O, j3 F4 s
    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 16:59 , Processed in 0.536324 second(s), 50 queries .

    回顶部