螺旋方陣問題【數組】

輸入n,輸出n階螺旋方陣,下面為5階螺旋方陣:1 ? ?2 ? ?3 ? ?4 ? ?5

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 16 ?17 18 ?19 ? 6

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 15 ?24 ?25 ?20 ?7

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 14 ?23 ?22 ?21 ?8

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 13 ?12 ?11 ?10 ?9

下面為我的代碼:

#include <cstdio>
#include <iostream>
#include <cstring>
using namespace std;
int arr[15][15];
int main()
{int n;while(~printf("請輸入n的值:")){scanf("%d",&n);memset(arr,0,sizeof(arr));int cnt=1;int i=1,j=1;arr[1][1]=1;while(cnt<n*n)    //當改變到最后一個數值時跳出{while(arr[i][j+1]==0&&j+1<=n){cnt++;arr[i][j+1]=cnt;j++;}      //將當前行按順序改變直到邊界或遇到一已經改變的位置while(arr[i+1][j]==0&&i+1<=n){cnt++;arr[i+1][j]=cnt;i++;}      //將當前按順序改變直到邊界或遇到一已經改變的位置while(arr[i][j-1]==0&&j-1>=1){cnt++;arr[i][j-1]=cnt;j--;}      //將當前按順序改變直到邊界或遇到一已經改變的位置while(arr[i-1][j]==0&&i-1>=1){cnt++;arr[i-1][j]=cnt;i--;}      //將當前按順序改變直到邊界或遇到一已經改變的位置}printf("%d階螺旋方陣為:\n",n);for(i=1;i<=n;i++){for(j=1;j<=n;j++){printf("%3d",arr[i][j]);     //使每個數字占三位}printf("\n");}}return 0;
}

一組測試樣例為:

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/536332.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/536332.shtml
英文地址,請注明出處:http://en.pswp.cn/news/536332.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

馬鞍點問題【數組】

如果在一矩陣中元素A[i][j]滿足A[i][j]為第i行的最小值&#xff0c;第j行的最大值&#xff0c;則稱這個元素為這個矩陣的馬鞍點&#xff0c;求m*n矩陣所有的馬鞍點。若需求一個矩陣的所有馬鞍點&#xff0c;其實只需將矩陣的每行的最小值與每列的最大值分別求出存在相應的數組中…

Ping pong【樹狀數組】

Ping pong UVALive - 4329 題目傳送門 題目大意&#xff1a;一條大街上住著n個乒乓球愛好者&#xff0c;經常組織比賽切磋技術。每個人都有一個不同的技能值ai。每場比賽需要三個人&#xff1a;兩名選手&#xff0c;一名裁判。他們有一個奇怪的規定&#xff0c;即裁判必須住…

Frequent values【線段樹】

Frequent values UVA - 11235 題目傳送門 題目大意&#xff1a;給出一個非降序的整數數組a1,a2,a3...an&#xff0c;你的任務是對一系列的詢問&#xff08;i,j&#xff09;&#xff0c;回答ai,ai1,ai2...aj中出現次數最多的值所出現的次數。輸入包括多組數據。每組數據第一行…

求二叉樹節點個數、葉子節點、節點層次與寬度

需實現&#xff1a;&#xff08;1&#xff09;輸出二叉樹b的節點個數 &#xff08;2&#xff09;輸出二叉樹b的葉子節點個數 &#xff08;3&#xff09;求二叉樹b中指定節點值&#xff08;假設所有節點值不同&#xff09;的節點的層次。 &#xff08;4&#xff09;利用層次遍歷…

UVA - 227?Puzzle

Puzzle UVA - 227 題目傳送門 注意點&#xff1a;每兩個輸出點間有一個換行&#xff0c;但最后一個輸出無換行 惡心模擬題&#xff0c;很卡輸入輸出&#xff01;&#xff01;&#xff01; AC代碼1:(自己的代碼&#xff0c;提交時需要選擇C11) #include <cstdio> #i…

UVA - 232????????Crossword Answers

Crossword Answers UVA - 232 題目傳送門 直接按照要求尋找遍歷一遍即可 AC代碼&#xff1a; #include <cstdio> #include <iostream> #include <algorithm> #include <cmath> #include <cstdlib> #include <cstring> #include <m…

UVA - 1368????????DNA Consensus String

DNA Consensus String UVA - 1368 題目傳送門 解決方法&#xff1a;尋找每列中出現最多的字母。 AC代碼 #include <cstdio> #include <iostream> #include <algorithm> #include <cmath> #include <cstdlib> #include <cstring> #inc…

UVA - 202?Repeating Decimals

Repeating Decimals UVA - 202 題目傳送門 解決方法&#xff1a;模擬一下除法&#xff0c;及時記錄余數&#xff0c;當一個余數第二次出現時證明開始循環 AC代碼 #include <cstdio> #include <iostream> #include <algorithm> #include <cmath> #…

UVA - 10340????????All in All

All in All UVA - 10340 題目傳送門 將兩個字符串對比一下即可。 AC代碼&#xff1a; #include <cstdio> #include <iostream> #include <algorithm> #include <cmath> #include <cstdlib> #include <cstring> #include <map> …

UVA - 1587????????Box

Box UVA - 1587 題目傳送門 解決方法&#xff1a;按照邊在12個長寬出現的次數和出現在幾個矩形里來判定就行了 總共出現一個長度&#xff0c;滿足條件 總共出現兩個長度&#xff0c;則其中一個長度在12個數里出現4次&#xff0c;并在四個矩形中出現 總共出現三個長度&#x…

UVA - 1588????????Kickdown

Kickdown UVA - 1588 題目傳送門 解決方法&#xff1a;上板不動&#xff0c;下板向左移&#xff1b;上板不動&#xff0c;下板向右移。 AC代碼&#xff1a; #include <cstdio> #include <iostream> #include <algorithm> #include <cmath> #inclu…

UVA - 1339????????Ancient Cipher

Ancient Cipher UVA - 1339 題目傳送門 解決方法&#xff1a;模擬一下轉換過程即可。 AC代碼&#xff1a; #include <cstdio> #include <iostream> #include <algorithm> #include <cmath> #include <cstdlib> #include <cstring> #i…

UVA - 489????????Hangman Judge

Hangman Judge UVA - 489 題目傳送門 PS.此題Udebug有毒&#xff0c;即使100組樣例全過&#xff0c;但還是WA&#xff0c;心塞。 這是我自己的代碼&#xff0c;悲催的WA了 #include <cstdio> #include <iostream> #include <algorithm> #include <cm…

UVA - 133????????The Dole Queue

The Dole Queue UVA - 133 題目傳送門 模擬一遍過程&#xff0c;注&#xff1a;可能會選中同一個人 AC代碼&#xff1a; #include <cstdio> #include <iostream> #include <algorithm> #include <cmath> #include <cstdlib> #include <c…

UVA - 213?Message Decoding

Message Decoding UVA - 213 題目傳送門 emmmm&#xff0c;此題按照紫書上的思路來即可&#xff0c;要么太復雜 AC代碼&#xff1a; #include <cstdio> #include <iostream> #include <algorithm> #include <cmath> #include <cstdlib> #in…

UVA - 512????????Spreadsheet Tracking

Spreadsheet Tracking UVA - 512 題目傳送門 紫書第二個思路十分巧妙&#xff0c;能用很少的代碼解出此題。 AC代碼&#xff1a; #include <cstdio> #include <iostream> #include <algorithm> #include <cmath> #include <cstdlib> #inclu…

UVA - 1589????????Xiangqi

Xiangqi UVA - 1589 題目傳送門 解決方法&#xff1a;判斷黑棋是否能有可以下的地方 AC代碼&#xff1a; #include <cstdio> #include <iostream> #include <algorithm> #include <cmath> #include <cstdlib> #include <cstring> #in…

UVA - 12412????????A Typical Homework (a.k.a Shi Xiong Bang Bang Mang)

A Typical Homework (a.k.a Shi Xiong Bang Bang Mang) UVA - 12412 題目傳送門 emmmm&#xff0c;不想表達什么&#xff0c;udbug上的數據全過&#xff0c;可就是WA。。。。 AC了的代碼&#xff08;大佬的代碼&#xff09; #include <bits/stdc.h> using namespace…

【思維】draw!

題目&#xff1a; You still have partial information about the score during the historic football match. You are given a set of pairs (ai,bi)(ai,bi), indicating that at some point during the match the score was "aiai: bibi". It is known that if t…

【數學】Birthday

題目&#xff1a; Cowboy Vlad has a birthday today! There are nn children who came to the celebration. In order to greet Vlad, the children decided to form a circle around him. Among the children who came, there are both tall and low, so if they stand in a…