现场编码题目4
最大连号数量的计算问题
参考代码 Python版:
intList=[1,5,6,11,3,4,5,6,8,9] maxLen=1 maxMaxLen=1 for i in range(len(intList)-1): if intList[i]<intList[i+1] and intList[i+1]-intList[i]==1: maxLen=maxLen+1 if(maxLen>maxMaxLen): maxMaxLen=maxLen else: maxLen=1 print(maxMaxLen)
参考代码 C#版:
using System; namespace Case4 { class Program { static void Main(string[] args) { int[] intArray = { 1, 5, 6, 11, 3, 4, 5, 6, 8, 9 }; int maxLen = 1; int maxMaxLen = 1; for(int i=0;i<intArray.Length-1;i++) { if(intArray[i]<intArray[i+1] && intArray[i + 1] - intArray[i] == 1) { maxLen = maxLen + 1; if (maxLen > maxMaxLen) maxMaxLen = maxLen; } else maxLen = 1; } Console.WriteLine(maxMaxLen); } } }
参考代码 C++版:
#include <iostream> using namespace std; int main() { int intArray[] = { 1,5,6,11,3,4,5,6,8,9 }; int maxLen = 1; int maxMaxLen = 1; for (int i = 0; i < 9; i++) { if (intArray[i] < intArray[i + 1] && intArray[i + 1] - intArray[i] == 1) { maxLen++; if (maxLen > maxMaxLen) maxMaxLen = maxLen; } else maxLen = 1; } cout << maxMaxLen << endl; }