成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

C#算法解決蘿卜地問題

開發 后端 算法
C#算法解決蘿卜地問題想大家介紹了使用C#算法如何計算假想實際問題的思路,希望對大家理解學習C#算法有所幫助。

C#算法解決蘿卜地問題是什么呢?首先讓我們來看看題目:

話說你在走路上班時,經過一片種植蘿卜的農田。這塊田地的形狀是一個矩形的網格。

field的第i個元素的第j個字符,表示田地的第i行第j列的格子里包含的蘿卜的數目。

我們定義一個格子的特殊程度為它周圍所有格子的蘿卜個數的和; 它周圍的格子包含它上下左右以及對角相鄰的格子,

最多有8個,在田地的邊界上的格子會少一些。如果一個格子周圍沒有別的格子,則它的特殊程度為0。

請返回田地中特殊程度在A和B之間的所有格子的數目(包含A,B)。

Definition

Class:  NumberField

Method:  countSpecialNumbers

Parameters:  string[], int, int

Returns:  int

Method signature:  int countSpecialNumbers(string[] field, int A, int B)

(be sure your method is public)

Constraints

-  field 包含1個到50個元素,含1和50。

-  field的每個元素包含1個到50個字符,含1和50。

-  field的每個元素包含相同的字符數。

-  field的每個元素的字符均為’0’到’9’之一。

-  A的范圍會在0到100之間,含0和100。

-  B 的范圍會在A到100之間,含A和100。

C#算法的具體實現如下:

  1. using System;  
  2. using System.Collections.Generic;  
  3. using System.Text;  
  4.  
  5. namespace Field  
  6. {  
  7.     /// <summary>  
  8.     /// 2009.6.1 with ann by hooyes  
  9.     /// </summary>  
  10.    public class NumberField  
  11.     {  
  12.         static void Main(string[] args)  
  13.         {  
  14.  
  15.             //Test .  
  16.             string[] fieldx ={  
  17.    "1234567890",  
  18.     "1234567890",  
  19.     "1234567890",  
  20.    "1234567890",  
  21.       "1234567890",  
  22.    "1234567890",  
  23.    "1234567890",  
  24.    "1234567890",  
  25.    "1234567890",  
  26.    "1234567890",  
  27.    "1234567890"};  
  28.  
  29.             int r = countSpecialNumbers(fieldx, 3, 18);  
  30.  
  31.             Console.WriteLine(r);  
  32.             Console.Read();  
  33.         }  
  34.         /// <summary>  
  35.         /// 獲取第i,j格的蘿卜數  
  36.         /// </summary>  
  37.         /// <param name="i">行</param>  
  38.         /// <param name="j">列</param>  
  39.         /// <param name="fieldx"></param>  
  40.         /// <returns></returns>  
  41.         public static int fij(int i, int j,string[] fieldx)  
  42.         {  
  43.             int Rvalue = 0;  
  44.  
  45.             if (i < 0 || j < 0)  
  46.             {  
  47.                 return 0;  
  48.             }  
  49.  
  50.             int y = fieldx.Length - 1; //行  
  51.             int x = fieldx[0].Length - 1; //列  
  52.  
  53.             if ((i > y) || (j > x))  
  54.             {  
  55.                 return 0;  
  56.             }  
  57.             string f = fieldx[i];  
  58.             byte[] hooyesBy = System.Text.Encoding.ASCII.GetBytes(f);  
  59.             char xB = (char)hooyesBy[j];  
  60.             Rvalue = int.Parse(xB.ToString());  
  61.             return Rvalue;  
  62.         }  
  63.         /// <summary>  
  64.         /// 獲取第i,j格的特殊度  
  65.         /// </summary>  
  66.         /// <param name="i">行</param>  
  67.         /// <param name="j">列</param>  
  68.         /// <param name="fieldx"></param>  
  69.         /// <returns></returns>  
  70.         public static int fsp(int i, int j, string[] fieldx)  
  71.         {  
  72.             int Rvalue = 0;  
  73.             Rvalue = fij(i - 1, j, fieldx) +   
  74.   fij(i + 1, j, fieldx) +   
  75.   fij(i, j - 1, fieldx) +   
  76.   fij(i, j+1, fieldx) +   
  77.   fij(i - 1, j - 1, fieldx) +   
  78.   fij(i + 1, j + 1, fieldx) +   
  79.   fij(i - 1, j + 1, fieldx) +   
  80.   fij(i + 1, j - 1, fieldx);  
  81.             return Rvalue;  
  82.         }  
  83.         /// <summary>  
  84.         /// 返回滿足特殊度在A至B之間的格子數  
  85.         /// </summary>  
  86.         /// <param name="field"></param>  
  87.         /// <param name="A">特殊度下限</param>  
  88.         /// <param name="B">特殊度上限</param>  
  89.         /// <returns></returns>  
  90.         public static int countSpecialNumbers(string[] field, int A, int B)  
  91.         {  
  92.             int Rvalue = 0;  
  93.             //int i=0;  
  94.             //int j=0;  
  95.             int y = field.Length-1; //行  
  96.             int x = field[0].Length-1 ; //列  
  97.             for (int i = 0; i <=y; i++)  
  98.             {  
  99.                 for (int j = 0; j <=x;j++)  
  100.                 {  
  101.                     int tInt = fsp(i, j, field);  
  102.                     if (tInt >= A && tInt <= B)  
  103.                     {  
  104.                         Rvalue++;  
  105.                     }  
  106.  
  107.                 }  
  108.  
  109.             }  
  110.  
  111.             return Rvalue;  
  112.         }  
  113.     }  

C#算法C#算法解決蘿卜地問題就向你介紹點到這里,希望對你理解C#算法有所幫助。

【編輯推薦】

  1. 介紹C#中的值類型
  2. C#算法巧解八皇后問題淺析
  3. C#算法解決張老師的生日問題
  4. C#算法解決的一道面試題
  5. C#算法實現字符串反轉淺析
責任編輯:仲衡 來源: cnblogs
相關推薦

2009-08-11 09:40:22

張老師的生日問題C#算法

2009-08-06 10:35:27

C# lock thi

2021-06-11 00:09:20

C#爬蟲版本

2009-08-10 13:49:50

C# txt文件

2009-08-13 17:25:18

C# Convert類

2009-08-07 14:47:23

C#路徑問題

2009-08-11 09:16:00

2024-09-17 17:50:28

線程線程安全代碼

2012-02-02 14:34:37

C# Socket

2009-09-15 17:46:08

C#綁定句柄無效

2009-08-11 10:12:07

C#算法

2009-08-11 13:54:54

約瑟夫環算法C#算法

2009-08-28 10:14:45

C#內存泄露

2009-09-03 14:38:28

C#日期格式化C#日期格式

2009-08-06 16:01:30

C#接口成員

2025-02-10 10:52:34

WinForm窗口閃爍C#

2009-08-05 08:42:41

C#中用Oracle執DataSet

2011-04-25 15:15:00

C#

2009-09-02 14:30:35

C#換行符號

2009-08-25 17:41:51

C#開發排序算法
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 亚洲国产精品99久久久久久久久 | 日韩欧美在线视频 | 黄色片大全在线观看 | 成人久久网 | 国产精品一区二区久久久久 | 香蕉av免费 | 精品一区视频 | 免费在线看黄视频 | 一本色道精品久久一区二区三区 | 在线小视频 | 国产高清在线观看 | 一级黄a视频| 中文字幕视频在线看 | 欧美精品综合在线 | 99精品免费在线观看 | 欧美一级免费观看 | 国产精品视频500部 a久久 | 精品一区二区电影 | a久久| 久久久www成人免费无遮挡大片 | 一区二区三区免费观看 | 国产精品久久一区二区三区 | 一区二区精品视频 | 免费同性女女aaa免费网站 | 9色视频在线 | 国产特级毛片aaaaaa喷潮 | 久久成人精品 | 欧美一区二区三区,视频 | 一级毛片在线播放 | 日韩中文不卡 | 亚洲国内精品 | 久久久.com| 久久亚洲天堂 | 亚洲 欧美 另类 综合 偷拍 | 亚洲一区二区三区高清 | 国产免费视频 | 国产精品久久久久久亚洲调教 | 亚洲444eee在线观看 | 91精品国产综合久久久久 | 成人av网页 | 国产区在线 |