Python蓝桥等考十三级之三:序列排位赛(十三级完)

  青铜段位

  题目1:

 

 

  分析:字符串是序列,使用序列的count()即可。

  代码和运行结果如下:

 

 

  题目2:

 

  分析:字符串是序列,从字符串最后(-1)开始,往前计数不是*号的字符个数。

  代码和运行结果如下:

 

 

  白银段位

 

  题目1:

 

 

 

  分析:由条件可知,对于每一位字符,x[i]>=y[i] z[i]>=y[i]。因此如果有一个i,使x[i]<y[i],无解,返回-1;如果x[i]==y[i],则z[i]>=x[i],为简便起见,就取z[i]=x[i];如果x[i]>y[i],则z[i]=y[i]

  代码和运行结果如下:

 

 

  题目2:

 

  分析:三个连续0可种一盘花,头尾两个连续0也可以种一盘花。为了简便起见,头尾增加一个0,这样可以采用三个连续0可种一盘花的标准。

  代码和运行结果如下:

 

 

  黄金段位

 

 

  分析:用和式遍历的方法,获取7a+4b+3c=n的解元组(a,b,c),求取这个元组的最小值,保留在变量中,元组的和也保留在变量中;往下寻找解,当获得一组新解,如果元组最小值大,或者元组最小值相等而元组之和大,就用新解代替旧解;如此类推,就可以得到最优方案或无方案。

  代码和运行结果如下:

 

 

  铂金段位

 

 

  分析:统计26个大写字母出现的次数放入列表中,求列表的最大值,从这个最大值开始逐行打印到1为止,未到达的字母用空格代替,最后一行打印26个大小字母。

  代码和运行结果如下:

 

 

  钻石段位

 

 

 

  分析:

 

  代码和运行结果如下:

 

 

 

  练习题

 

  把上面的例题代码输入py文件测试。

 

  第一题:

 

 

  第二题: