1. 程式人生 > >蛇形填數(顛覆三觀)

蛇形填數(顛覆三觀)

#include<stdio.h>
#include<iostream>
#include<string.h>
using namespace std;
int s[100][100];
int main()
{
 int n,a,b,t;
 cin>>n;
 a=0;
 b=n-1;
 t=1;
 s[a][b]=1;
 memset(s,0,sizeof(a));//memset函式的用法一定要記好。++t的作用
 while(t<n*n)
 {
  while(a+1<n && !s[a+1][b])
  {
   s[++a][b]=++t;
  }
  while(b-1>=0  && !s[a][b-1] )
  {
   s[a][--b]=++t;
  }
  while(a-1>=0 && !s[a-1][b])
  {
   s[--a][b]=++t;
  }
  while(b<n && !s[a][b+1])
  {
   s[a][++b]=++t;
  }
   }
   printf("\n");
   for (int i=0;i<n;i++) 
    { 
        int c=0; 
        for(int j=0;j<n;j++) 
        { 
            c++; 
            if (c!=n) 
            cout<<s[i][j]<<" "; 
            else 
                cout<<s[i][j]<<endl; 
        } 
    } 
    return 0; 

相關推薦

蛇形顛覆三觀

#include<stdio.h>#include<iostream>#include<string.h>using namespace std;int s[100][100];int main(){ int n,a,b,t; cin>>n; a=0; b=n-

蛇形南陽理工

描述 在n*n方陳裡填入1,2,...,n*n,要求填成蛇形。 例如n=4時方陳為: 10 11 12 1 9 16 13 2 8 15 14 3 7 6 5 4`在這裡插入程式碼片` 輸入直接輸入方陳的維數,即n的值。 (n<=100)輸

蛇形

蛇形填數(二) 時間限制:2000 ms  |  記憶體限制:65535 KB 難度:3 描述 1 2 3 4 5 12 13 14 6 11 15 7 10 8 9 跟蛇形填數一樣

蛇形

蛇形填數 時間限制:3000 ms  |  記憶體限制:65535 KB 難度:3 描述在n*n方陳裡填入1,2,...,n*n,要求填成蛇形。例如n=4時方陳為: 10 11 12 1 9

題目三 蛇形

思路來源:蛇形填數(一) #include <iostream>#include <iomanip>using namespace std;int a[100][100];void main(){     int n,count,x,y;     c

852 蛇形【模擬】

蛇形填數(二) 時間限制:2000 ms  |  記憶體限制:65535 KB 難度:3 描述 1 2 3 4 5 12 13 14 6 11 15 7 10 8 9 跟蛇形填數一

南陽OJ 852題 蛇形

這個題主要是要細心。我們可以把它看成一個三角形一層層的迴圈就好了 #include<stdio.h> int a[1000][1000]; void F(int n,int m){

蛇形蛇形基礎模擬練習

code 練習 color 順序 printf urn pri int 蛇形填數 1 /* 2 問題 輸入矩陣的規模n,先將數按照下,右,上,左的順序填入矩陣,再按照這樣的順序取出。 3 解題思路 模擬,按照筆的順序存入取出,註意初始化的時候一定將矩陣全部初始化。

蛇行矩陣 蛇形 回形取 蛇行系類C語言詳解+圖解

  本貼 包括,蛇行矩陣  蛇形填數  回形取數  等 蛇行系類(C語言詳解)                    

蛇皮走位蛇形——記一道有點意思的ACM題

#include<iostream> using namespace std; int main() { int n; cin>>n; int arr[1

蛇形 陣列解法最簡單

解法 你能發現這裡面的數為1到 n*n;  所以寫個迴圈即可 while(count<n*n){ while(x+1<n && !a[x+1][y]

C語言每日小練——蛇形

例:在n*n方陣裡輸入1,2,3,...,n*n,要求填成蛇形。例如n=4時方陣為: 10 11 12  1   9 16 13  2   8 15 14  3   7   6   5  4 上面的方陣中,多餘的空格知識為了便於觀察矩陣,不必嚴格輸出,n<=8。 解:

NOIP2018提高組題解遊戲logn做法

總體來說,Day1的3題非常水,Day2的難度卻飆升到一定境界了……然後我就GG了…… T1 鋪設道路 題目連結 這道題一眼原題,顯然,如果 d

方格2016年藍橋杯

如圖,如下的10個格子,填入0~9的數字。要求:連續的兩個數字不能相鄰。(左右、上下、對角都算相鄰)一共有多少種可能的填數方案?請填寫表示方案數目的整數。看到這題第一個想到的方法就是回溯,就很像八皇后,

codeup27968 方陣NOIP1995普及組第2題

時空限制    1000ms/128MB 題目描述 在一個N*N的方陣中,填入1,2,……N*N個數,並要求構成如下的格式: 例如: N=5 13 14 15 16 1 12 23 24 17 2 11 22 25 18 3 10 21 20 19 4 9 8 7 6

python_遞歸_協程函yield關鍵字_匿名函_模塊

ont fin 自動 urn 2-0 作用 tor gif 實現 協程函數(yield) 協程函數:生成器:yield關鍵字的另一種用法 例:裝飾器自動初始化函數(生成器函數)deco 1 yield的語句形式: yield 1 2 #yield的表達式形式: x=

Python基礎day-11[內置函未完,遞歸,匿名函]

oat 讀寫 磁盤 自動 信息 map() instance 冒號 匿名 內置函數: abs() : 返回數字的絕對值。參數可以是整數或浮點數,如果參數是復數,則返回復數的模。 print(abs(0.2)) print(abs(1)) print(abs(-4)) pr

[LeetCode]Median of Two Sorted Arrays 二分查找兩個有序數組的第k中位數

大於 data div ble 關系 操作 spa 兩個 -1 二分。情況討論 因為數組有序,所以能夠考慮用二分。通過二分剔除掉肯定不是第k位數的區間。如果數組A和B當前處理的下標各自是mid1和mid2。則 1、假設A[mid1]<B[mid2], ①

從ajax的回調函success等中取返回值

ray div eno log left 應該 var code msg 1 var strs = new Array(); 2 3 function getData() { 4 var strs2 = n

Function Programming - 純函Pure Function

logs 介紹 更改 strong 我們 url script imu 觀察 純函數的定義,非常重要!! Pure function 意指相同的輸入,永遠會得到相同的輸出,而且沒有任何顯著的副作用。 老樣子,我們還是從最簡單的栗子開始: var minimum = 21;