日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

蓝桥杯第七届决赛JAVA真题----路径之谜

發(fā)布時(shí)間:2025/3/15 编程问答 32 豆豆
生活随笔 收集整理的這篇文章主要介紹了 蓝桥杯第七届决赛JAVA真题----路径之谜 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
路徑之謎

小明冒充X星球的騎士,進(jìn)入了一個(gè)奇怪的城堡。
城堡里邊什么都沒(méi)有,只有方形石頭鋪成的地面。
假設(shè)城堡地面是 n x n 個(gè)方格。【如圖1.png】所示。


按習(xí)俗,騎士要從西北角走到東南角。
可以橫向或縱向移動(dòng),但不能斜著走,也不能跳躍。
每走到一個(gè)新方格,就要向正北方和正西方各射一箭。
(城堡的西墻和北墻內(nèi)各有 n 個(gè)靶子)
同一個(gè)方格只允許經(jīng)過(guò)一次。但不必做完所有的方格。
如果只給出靶子上箭的數(shù)目,你能推斷出騎士的行走路線嗎?
有時(shí)是可以的,比如圖1.png中的例子。
本題的要求就是已知箭靶數(shù)字,求騎士的行走路徑(測(cè)試數(shù)據(jù)保證路徑唯一)

輸入:
第一行一個(gè)整數(shù)N(0<N<20),表示地面有 N x N 個(gè)方格
第二行N個(gè)整數(shù),空格分開(kāi),表示北邊的箭靶上的數(shù)字(自西向東)

第三行N個(gè)整數(shù),空格分開(kāi),表示西邊的箭靶上的數(shù)字(自北向南)

輸出:
一行若干個(gè)整數(shù),表示騎士路徑。

為了方便表示,我們約定每個(gè)小格子用一個(gè)數(shù)字代表,從西北角開(kāi)始編號(hào): 0,1,2,3....
比如,圖1.png中的方塊編號(hào)為:
0? 1? 2? 3
4? 5? 6? 7
8? 9? 10 11
12 13 14 15

示例:
用戶輸入:
4
2 4 3 4
4 3 3 3

程序應(yīng)該輸出:
0 4 5 1 2 3 7 11 10 9 13 14 15

資源約定:
峰值內(nèi)存消耗 < 256M
CPU消耗? < 1000ms

請(qǐng)嚴(yán)格按要求輸出,不要畫(huà)蛇添足地打印類似:“請(qǐng)您輸入...” 的多余內(nèi)容。

所有代碼放在同一個(gè)源文件中,調(diào)試通過(guò)后,拷貝提交該源碼。
注意:不要使用package語(yǔ)句。不要使用jdk1.7及以上版本的特性。

注意:主類的名字必須是:Main,否則按無(wú)效代碼處理。

思路:就是DFS,啥也沒(méi)有,題干一如既往的長(zhǎng),唯一復(fù)雜的就是變量多了些。我們直接錯(cuò)(0,0)進(jìn)行搜素,遍歷每個(gè)結(jié)點(diǎn),同時(shí)保證符合要求即可(注意每次col和row要往同一個(gè)方向進(jìn)行)。看來(lái)是有必要認(rèn)真梳理一下類似的題目了。

這樣的搜素必然要有vis[][]記錄是否遍歷,必然要有dir[][]控制方向。? ? ?告誡自己:以后注意采用匈牙利命名法,類似iMax。

完整代碼如下:

import java.util.Scanner;public class Main {static int n;static int[] row, col;static int rowSum;static int colSum;static int[][] print;//標(biāo)定每個(gè)單元格的數(shù)字static int[] map;//記錄打印順序,長(zhǎng)度為(rowSum+colSum)/2,即len的最終值static int len = 0;//記錄路徑的行進(jìn)長(zhǎng)度static int[][] vis;static int[][] dir = {{0, 1}, {0, -1}, {-1, 0}, {1, 0}};public static void main(String[] args) {Scanner in = new Scanner(System.in);n = in.nextInt();row = new int[n + 1];col = new int[n + 1];vis = new int[n + 1][n + 1];print = new int[n + 1][n + 1];map = new int[n*n + 1];int index = 0;for(int i=0; i<n; ++i) {for(int j=0; j<n; ++j) {print[i][j] = index++;}}for (int i = 0; i < n; i++) {row[i] = in.nextInt();rowSum += row[i];}for (int i = 0; i < n; i++) {col[i] = in.nextInt();colSum += col[i];}len = 1;vis[0][0] = 1;row[0]--;rowSum--;col[0]--;colSum--;map[0] = 0;f(0, 0);}private static void f(int x, int y) {// TODO Auto-generated method stubif (x == n - 1 && y == n - 1) {if (colSum == 0 && rowSum == 0) {for (int i = 0; i < len; i++) {System.out.print(map[i] + " ");}}}for (int i = 0; i < 4; i++) {int dx = x + dir[i][0];int dy = y + dir[i][1];if (dx >= 0 && dx < n && dy >= 0 && dy < n && vis[dx][dy] == 0 && row[dy] > 0 && col[dx] > 0) { // row和col要往同一個(gè)方向進(jìn)行,即同時(shí)加減。vis[dx][dy] = 1;row[dy]--;rowSum--;col[dx]--;colSum--;map[len++] = print[dx][dy];f(dx, dy);len--;vis[dx][dy] = 0;row[dy]++;rowSum++;col[dx]++;colSum++;}}} }

總結(jié)

以上是生活随笔為你收集整理的蓝桥杯第七届决赛JAVA真题----路径之谜的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 国产美女视频一区二区 | 国产精品久久国产精麻豆96堂 | av黄色片| 特级西西www444人体聚色 | 国产做受麻豆动漫 | 国产精品成人aaaa在线 | 精品国产丝袜一区二区三区乱码 | 亚洲 小说区 图片区 | www.欧美色图 | 免费看成人毛片 | 极品人妻videosss人妻 | 中文字幕免费高清在线 | 国产福利小视频在线观看 | 日韩欧美在线视频观看 | 欧美影院一区二区 | 日韩r级电影在线观看 | 国产成人啪一区二区 | 激情久久免费视频 | 少妇脚交调教玩男人的视频 | 在线cao | 日本美女一区二区三区 | 岛国一区 | 激情内射人妻1区2区3区 | 另类老妇性bbwbbw图片 | 日本国产高清 | 菠萝菠萝蜜网站 | 中文字幕乱码无码人妻系列蜜桃 | 欧美日韩国产精品一区 | 国模无码大尺度一区二区三区 | 丁香七月婷婷 | 黄色av网站免费在线观看 | 日韩精品人妻一区二区中文字幕 | 日韩精品在线免费观看 | 无套爆插| 潘金莲一级淫片aaaaa | 在线免费看a | h片在线观看免费 | 欧美日韩不卡在线 | 免费看黄色av | 成人快手免费看片 | 久久99婷婷| 乱xxxxx普通话对白 | 欧美三级视频在线播放 | 男生操女生免费网站 | 国产白丝精品91爽爽久久 | 午夜写真片福利电影网 | 欧美日韩一区二区三区国产精品成人 | 视频在线观看91 | 日本韩国三级 | 中文字幕一区在线 | 国产白丝喷水 | 天天操好逼 | av一级网站| 精品久久伊人 | 亚洲国产精品久久久久久6q | 日韩人妻精品一区二区 | 一级全黄裸体免费视频 | 天天插插 | 毛片无码免费无码播放 | 成人区精品一区二区婷婷 | 外国黄色网 | 国产v亚洲 | 91网站在线播放 | 日韩一区免费观看 | 在线观看免费视频a | c逼| 99黄色| 成人手机av| 你懂的视频网站 | 日本乱码视频 | 欧美日韩观看 | 国产一级二级在线 | 中文一区在线 | 国产xxxx做受视频 | 超清纯大学生白嫩啪啪 | 日韩 欧美 综合 | 中文字幕一区二区三区乱码人妻 | 九九在线| youjizz国产 | 999免费 | 国产免费看 | 解开人妻的裙子猛烈进入 | av乱码 | 日本特黄一级 | 亚洲精品久久久久久一区二区 | 色偷偷免费视频 | 成人爱爱| 97在线免费观看视频 | 久久香蕉热 | 色老头av | 快色在线观看 | 69视频免费在线观看 | 流白浆视频 | 波多野结衣在线观看视频 | 午夜激情婷婷 | 视色视频 | 毛片视频免费观看 | 呦呦网| 欧美日韩第一区 |