小明正在学习一种新的编程语言 A++,刚学会循环语句的他激动地写了好多程序并 给出了他自己算出的时间复杂度,可他的编程老师实在不想一个一个检查小明的程序, 于是你的机会来啦!下面请你编写程序来判断小明对他的每个程序给出的时间复杂度是否正确。
A++语言的循环结构如下:
F i x y 循环体 E
其中F i x y表示新建变量i(变量i不可与未被销毁的变量重名)并初始化为x, 然后判断i和y的大小关系,若i小于等于y则进入循环,否则不进入。每次循环结束后iii都会被修改成i +1,一旦i大于y终止循环。
x和y可以是正整数(x和y的大小关系不定)或变量n。n是一个表示数据规模的变量,在时间复杂度计算中需保留该变量而不能将其视为常数,该数远大于 100。
“E”表示循环体结束。循环体结束时,这个循环体新建的变量也被销毁。
注:本题中为了书写方便,在描述复杂度时,使用大写英文字母“O”表示通常意义下“Θ”的概念。