#coding=gbk
'''
1、将单词表中由相同字母组成的单词归成一类,每类单词按照单词的首字母排序,并按
#每类中第一个单词字典序由大到小排列输出各个类别。
#输入格式:按字典序由小到大输入若干个单词,每个单词占一行,以end结束输入。
#cinema
#iceman
#maps
#spam
#aboard
#abroad
#end
#输出格式:一类单词一行,类别间单词以空格隔开。
#aboard abroad
#cinema iceman
#maps spam
''' result=[]
'''
while 1:
word=input('请输入单词:')
if word=='.':
break
else:
result.append(word)
'''
result=['nihao','haoni','aohni','haha','aahh','hhaa','ee','rrr','fhg','ghf'] d=dict.fromkeys([''.join(sorted(i)) for i in result])#字典的初始化 不能直接把value值直接职位[],这样所有的value都会一致的变化
print(d)
for k,v in d.items():
d[k]=[] #初始化的字典的value值 for i in result:
print('i:',i)
if ''.join(sorted(i))==k and i not in d[k]:
d[k].append(i) print(d) for i in sorted(d.keys()):
for j in sorted(d[i]):
print(j,end=' ')
print() #2.有一堆100块的石头,2个人轮流随机从中取1-5块,谁取最后一块就谁win,编程实现此过程
print('*'*30) from random import *
a=list(range(1,101))
while len(a)>0:
person_1=[]
person_2=[]
print('最开始的a:',a) num_1=randint(1,5)
if num_1>len(a):
num_1=len(a) person_1=sample(a,num_1)
print('person_1',person_1)
for i in person_1:
a.remove(i)
if len(a)==0:
print('1 赢了!!')
break
print('1处理之后的a:',a)
num_2=randint(1,5)
if num_2>len(a):
num_2=len(a)
person_2=sample(a,num_2)
print('person_2',person_2)
for i in person_2:
a.remove(i)
if len(a)==0:
print('2 赢了!!')
break
print('2之后的a:',a) ##实现一个方法,判断一个正整数是否是2的乘方,比如16是2的4次方,返回True;
#18不是2的乘方,返回False。要求性能尽可能高 from math import sqrt,ceil
n=0
while n<100:
input_num=int(input('请输入数字:')) for i in range(1,ceil(sqrt(input_num))+1): if pow(2,i)==input_num:
print('%d是2的%d次方!!'%(input_num,i))
break
else:
print('不是2的平方数!!')
n+=1

三道习题(1、将单词表中由相同字母组成的单词归成一类,每类单词按照单词的首字母排序,并按 #每类中第一个单词字典序由大到小排列输出各个类别。 #输入格式:按字典序由小到大输入若干个单词,每个单词占一行,以end结束输入。)的更多相关文章

  1. Java 使用Arrays.sort排序 从大到小排列

    前言 一般情况,我们在Java中给数组排序,比起自己写个冒泡排序,更加喜欢使用Java中自带的sort方法,也就是Arrays.sort方法 但是,这个方法只会将数组从小到大排列,如果我们需要从大到小 ...

  2. List.Sort() 小小技巧--- 从大到小排列

    List.sort() 默认的情况下是从小到大的排列. 例如: List<int> list = new List<int>();             list.Add(- ...

  3. 从键盘录入输入3 个数num1,num2,num3,按从大到小进行输出

    本题分别使用嵌套分支语句以及三目运算符来实现,两种方法,可以对比看看. import java.util.Scanner; /** * 从键盘录入输入3 个数a,b,c,按从大到小进行输出 * @au ...

  4. 嵌入式-c语言基础:冒泡排序实现从大到小排列

    #include<stdio.h> int main() { /*冒泡排序:从大到小*/ /*i=0 第1轮(i+1):需要比较9次(sizeArr-i-1)*/ /*i=1 第2轮(i+ ...

  5. java Script 用if else 实现从大到小指定输出,升序排列

    我只是一个小白 各位大神看到不要介意 var a = Number(prompt("请输入你需要排列的第一个数字")) var b = Number(prompt("请输 ...

  6. java中输入3个数,从大到小的输出。。。。

    总结:我暂时不能理解,C语言时讲过,java里就不理解了 package com.a; import java.sql.Date; import java.util.Scanner; //输入三个数, ...

  7. echart的x轴或y轴区间标签如何从大到小排列

    1.有时候我们做echart时,从后台接收返回回来的数据,没有按顺序排列,这里我遇到的是区间的值,看图 我这里是处理好了的,一开始,50-100这个区间在数组的最后一列,也就是在150-200后面的这 ...

  8. c语言实现输入一组数自动从大到小排列

    #include <stdio.h>main(){    int x;    printf("请输入要排序数字个数:");    scanf("%d" ...

  9. mapreduce程序的按照key值从大到小降序排列

    在近期的Hadoop的学习中,在学习mapreduce时遇到问题:让求所给数据的top10,们我们指导mapreduce中是有默认的排列机制的,是按照key的升序从大到小排列的 然而top10问题的求 ...

随机推荐

  1. 最新 荔枝java校招面经 (含整理过的面试题大全)

    从6月到10月,经过4个月努力和坚持,自己有幸拿到了网易雷火.京东.去哪儿.荔枝等10家互联网公司的校招Offer,因为某些自身原因最终选择了荔枝.6.7月主要是做系统复习.项目复盘.LeetCode ...

  2. 最新 腾讯java校招面试题(含整理过的面试题大全)

    从6月到10月,经过4个月努力和坚持,自己有幸拿到了网易雷火.京东.去哪儿.腾讯等10家互联网公司的校招Offer,因为某些自身原因最终选择了腾讯.6.7月主要是做系统复习.项目复盘.LeetCode ...

  3. Mybatis映射文件sql语句注意事项

    1.插入

  4. mysql的AB及读写和集群

    Mysql的AB及读写  第1章 Mysql的AB配置 1.1 master配置 1.2 slave配置 第2章 读写分离 2.1 安装mycat 2.2 启动mycat 2.3 登录mycat相关问 ...

  5. 自定义 Win10 系统鼠标右键发送到的选项

    系统默认的右键「发送到」菜单只有几个特定的项目,如果要想发送到其他目标,可通过在资源管理器地址栏中访问 C:\Users\用户名\AppData\Roaming\Microsoft\Windows\S ...

  6. 开启 oracle 的闪回功能

    查看是否开启闪回 SQL> select flashback_on from v$database; FLASHBACK_ON ------------------ NO 查看是否配置了db_r ...

  7. QMetaMethod 获取成员函数的元信息

    在上一篇中,我们将的是QMetaEnum类,它可以获得一个类中由Q_ENUM宏或Q_FLAG宏声明的枚举类型的元信息.同样,QMetaMethod类是用来获取成员方法的元信息的一个类.通过该类,我们可 ...

  8. MySQL SELECT表达式的执行顺序是从左往右依次执行

    例子如下:(确保这几个变量都是初次使用,因为mysql的用户自定义变量会在整个连接session中存在) ,,; +--------+-------+---------+-------+ | +--- ...

  9. 动手篇:简单的注册界面与防SQL注入(续)

    注册前先判断用户名是否已经存在,通过if (SqlHelper.Exists(strSql))查询判断是否已经存在.没存在则进行一个数据插入数据库操作 string strSql1 = string. ...

  10. IDEA忽略不必要提交的文件

    1.在idea中安装插件用来生成和管理 .gitignore 文件,安装成功后重启idea 2.新建.gitignore 文件 3.将不需要提交的文件添加到.gitignore  4.删除缓冲文件 . ...