欢迎访问 生活随笔!

生活随笔

当前位置: 首页 >

Code Hunt SECTOR 10 - 11(Jagged Arrays Arrays 2)

发布时间:2025/3/20 41 豆豆
生活随笔 收集整理的这篇文章主要介绍了 Code Hunt SECTOR 10 - 11(Jagged Arrays Arrays 2) 小编觉得挺不错的,现在分享给大家,帮大家做个参考.

2019独角兽企业重金招聘Python工程师标准>>>

1.关于本博客的说明

Code Hunt 是我从CSDN上的一篇文章中无意间看到的:微软研究院正式发布编程学习游戏Code Hunt,游戏地址从这里进入。

本篇博客是游戏的 JAGGED ARRAYS 和 Arrays 2 部分的C#部分解题代码

2.SECTOR10:JAGGED ARRAYS

1)SECTOR10-01

SKILL RATING:3

using System; public class Program {public static int Puzzle(int[][] list, int i, int j){return list[i][j];} }

2)SECTOR10-02

SKILL RATING:1

建立一个大小为5*5的矩阵,每个元素赋初值为0

using System; public class Program {public static int[][] Puzzle(){return new int[][] { new int[5], new int[5], new int[5], new int[5], new int[5] };} }

3)SECTOR10-03

建立一个大小为length*length的矩阵,每个元素赋初值为x

SKILL RATING:1

using System; public class Program {public static int[][] Puzzle(int length, int x){int[] array = new int[length];for (int i = 0; i < array.Length; i++){array[i] = x; }int[][] result = new int[length][];for (int i = 0; i < result.Length; i++){ result[i] = array; }return result;} }

4)SECTOR10-04

SKILL RATING:3

using System; public class Program {public static int[][] Puzzle(int[][] input){int[][] result = new int[input.Length][];for (int i = 0; i < result.Length; i++){result[i] = new int[input[i].Length];for (int j = 0; j < result[i].Length; j++){result[i][j] = input[i][j] * 2;}}return result;} }

SKILL RATING:?

using System; public class Program {public static int[][] Puzzle(int[][] input){for (int i = 0; i < input.Length; i++){for (int j = 0; j < input[i].Length; j++){input[i][j] *= 2;}}return input;} }

5)SECTOR10-05

找出数组input中等于i的元素个数

SKILL RATING:3

using System; public class Program {public static int Puzzle(int[][] input, int i){int counter = 0;for (int x = 0; x < input.Length; x++){for (int y = 0; y < input[x].Length; y++){if (input[x][y] == i){counter++;}}}return counter;} }

6)SECTOR10-06

SKILL RATING:1

using System; public class Program {public static int Puzzle(int[][] input){int max = int.MinValue;for (int x = 0; x < input.Length; x++){for (int y = 0; y < input[x].Length; y++){if (input[x][y] > max){max = input[x][y];}}}return max;} }

7)SECTOR10-07

找到锯齿型数组中和最大的一个元素数组

SKILL RATING:2

using System; public class Program {public static int[] Puzzle(int[][] input){int maxsum = int.MinValue;int arrsum = 0;int isign = 0;for (int i = 0; i < input.Length; i++){arrsum = 0;for (int j = 0; j < input[i].Length; j++){arrsum += input[i][j];}if (arrsum > maxsum){maxsum = arrsum;isign = i;}}return input[isign];} }

8)SECTOR10-08

找出二维数组各列中元素总和最大的列,并输出该列各元素和

SKILL RATING:2

using System; public class Program {public static int Puzzle(int[][] input){int[] arrsum = new int[input[0].Length];int sum = 0;for (int i = 0; i < input[0].Length; i++){sum = 0;for (int j = 0; j < input.Length; j++){sum += input[j][i];}arrsum[i] = sum;}int max = int.MinValue;int sign = 0;for (int x = 0; x < arrsum.Length; x++){if (arrsum[x] > max){max = arrsum[x];sign = x;}}return arrsum[sign];} }

SKILL RATING:3

using System; public class Program {public static int Puzzle(int[][] input){int max = int.MinValue;int sum = 0;for (int i = 0; i < input[0].Length; i++){sum = 0;for (int j = 0; j < input.Length; j++){sum += input[j][i];}if (max < sum){max = sum;}}return max;} }

2.SECTOR11:ARRAYS 2

1)SECTOR11-01

两个数组 a,b 生成一个新的数组 c
c[i]=a[i]-b[i] (i<a、b的长度,且a[i]>=b[i])
c[i]=b[i]-a[i] (i<a、b的长度,且a[i]<b[i])
c[i]=0-b[i] (i>=a的长度且i<b的长度)
c[i]=a[i]-0 (i>=b的长度且i<a的长度)

SKILL RATING:1

using System; public class Program {public static int[] Puzzle(int[] a, int[] b){int[] c = new int[a.Length >= b.Length ? a.Length : b.Length];for (int i = 0; i < c.Length; i++){if (i < a.Length && i < b.Length){c[i] = a[i] >= b[i] ? a[i] - b[i] : b[i] - a[i];}else if (i >= a.Length && i < b.Length){c[i] = 0 - b[i];}else{c[i] = a[i] - 0;}}return c;} }

2)SECTOR11-02

将一个数组中每个元素复制一个放在自己后面,生成一个新数组

{"", "a"} → {"", "", "a", "a"}

SKILL RATING:2

using System; public class Program {public static string[] Puzzle(string[] a, int amount){string[] s = new string[a.Length * amount];for (int i = 0; i < a.Length; i++){for (int j = 0; j < amount; j++){s[amount * i + j] = a[i];}}return s;} }

3)SECTOR11-03

一个二维方阵,判断两个对角线元素和是否相等

SKILL RATING:3

using System; public class Program {public static bool Puzzle(int[][] input){int sum1 = 0, sum2 = 0;for (int i = 0; i < input.Length; i++){sum1 += input[i][i];sum2 += input[i][input.Length - 1 - i];}return sum1 == sum2 ? true : false;} }

4)SECTOR11-04

SKILL RATING:3

using System; public class Program {public static int[] Puzzle(int[] list, int modBy){for (int i = 0; i < list.Length; i++){list[i] %= modBy;}return list;} }

5)SECTOR11-05

SKILL RATING:2

using System; public class Program {public static string[] Puzzle(string[] list) {string[] result = new string[(list.Length+1)/2];for(int i=0;i<result.Length-1;i++){result[i]=list[i*2]+list[i*2+1];}result[result.Length-1] = (list.Length%2==0)?(list[list.Length-2]+list[list.Length-1]):(list[list.Length-1]);return result;} }

6)SECTOR11-06

SKILL RATING:3

using System; public class Program {public static string[] Puzzle(int[] grades, int A, int B, int C, int D){string[] sgrades = new string[grades.Length];for (int i = 0; i < grades.Length; i++){sgrades[i] = (grades[i] >= A ? "A" : (grades[i] >= B ? "B" : (grades[i] >= C ? "C" : (grades[i] >= D ? "D" : "E"))));}return sgrades;} }

7)SECTOR11-07

SKILL RATING:3

using System; public class Program {public static string[][] Puzzle(string[][] input){string temp;for (int i = 0; i < input.Length; i++){for (int j = i; j < input[i].Length; j++){temp = input[i][j];input[i][j] = input[j][i];input[j][i] = temp;}}return input;} }


转载于:https://my.oschina.net/Tsybius2014/blog/267576

总结

以上是生活随笔为你收集整理的Code Hunt SECTOR 10 - 11(Jagged Arrays Arrays 2)的全部内容,希望文章能够帮你解决所遇到的问题。

如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。