Python解决codeforces ---- 2
来源:互联网 发布:免费淘宝货源供应商 编辑:程序博客网 时间:2024/05/16 07:04
第一题 4A
题意:给定一个数w,问能否分成两部分并且每部份都是偶数
思路:w的值很小,暴力枚举两部分的值
代码:
n = int(raw_input())isOk = Falsefor i in range(2,n): if i%2 == 0 and (n-2)%2 == 0: isOk = True breakif isOk: print "YES"else: print "NO"
第二题 5A
Polycarp is working on a new project called "Polychat". Following modern tendencies in IT, he decided, that this project should contain chat as well. To achieve this goal, Polycarp has spent several hours in front of his laptop and implemented a chat server that can process three types of commands:
- Include a person to the chat ('Add' command).
- Remove a person from the chat ('Remove' command).
- Send a message from a person to all people, who are currently in the chat, including the one, who sends the message ('Send'command).
Now Polycarp wants to find out the amount of outgoing traffic that the server will produce while processing a particular set of commands.
Polycarp knows that chat server sends no traffic for 'Add' and 'Remove' commands. When 'Send' command is processed, server sends lbytes to each participant of the chat, where l is the length of the message.
As Polycarp has no time, he is asking for your help in solving this problem.
Input file will contain not more than 100 commands, each in its own line. No line will exceed 100 characters. Formats of the commands will be the following:
- +<name> for 'Add' command.
- -<name> for 'Remove' command.
- <sender_name>:<message_text> for 'Send' command.
<name> and <sender_name> is a non-empty sequence of Latin letters and digits. <message_text> can contain letters, digits and spaces, but can't start or end with a space. <message_text> can be an empty line.
It is guaranteed, that input data are correct, i.e. there will be no 'Add' command if person with such a name is already in the chat, there will be no 'Remove' command if there is no person with such a name in the chat etc.
All names are case-sensitive.
Print a single number — answer to the problem.
+MikeMike:hello+Kate+Dmitry-DmitryKate:hi-Kate
9
+Mike-Mike+MikeMike:Hi I am here-Mike+Kate-Kate
14
题意:有三种命令,"+name"是添加一个人,"-name"是删除一个人,"name:message"是这个人发了message给所有人,问最后总的发送的字节数
思路:直接暴力求解,利用Python的list
代码:
dict = []sum = 0# inputwhile True: try: str = raw_input() except: break if str[0] == '+': dict.append(str[1:]) elif str[0] == '-': dict.remove(str[1:]) else: length = len(str) for i in range(length): if str[i] == ':': sum += (length-(i+1))*(len(dict)) breakprint sum
第三题 6A
题意:给定4条线段,问能否组成三角形,如果可以输出"TRIANGLE",如果不能组成三角形但是会退化输出"SEGMENT",否则输出"IMPOSSIBLE"
思路:直接暴力枚举
代码:
sticks = raw_input().split()# 判断能否组成三角形 def isOk(x , y , z): if x+y > z and x+z > y and y+z > x: return True return False # 判断是否会退化def judge(x , y , z): if x+y == z or x+z == y or y+z == x: return True return False# 求ansans = "IMPOSSIBLE"for i in range(4): for j in range(i+1,4): for k in range(j+1,4): if isOk(int(sticks[i]),int(sticks[j]),int(sticks[k])): ans = "TRIANGLE" if ans == "IMPOSSIBLE" and judge(int(sticks[i]),int(sticks[j]),int(sticks[k])): ans = "SEGMENT"print ans
- Python解决codeforces ---- 2
- Python解决codeforces ---- 1
- Python解决codeforces ---- 3
- Python解决codeforces ---- 4
- Python解决codeforces ---- 5
- Python解决codeforces ---- 6
- Python解决codeforces ---- 7
- paip.python错误解决2
- codeforces python / pike solutions
- codeforces 570A【python】
- codeforces 719A 【python】
- codeforces 731A【python】
- codeforces 151A【python】
- codeforces 560A【python】
- codeforces 651A python
- Python练习(2):递归解决汉诺塔问题
- python | 解决defaults::qt-5.6.2-vc14_3
- 4selenium+python 登录2 遗留问题解决
- 安卓手机或者平板文件系统中出现自动创建 SDCARD/JOY 目录的解决办法
- min函数
- jquery-json解析(身份证查询)
- 不开辟用于交换数据的临时空间,如何完成字符串的逆序
- note : COM Tips
- Python解决codeforces ---- 2
- div居中显示 css样式
- 通常每个套接字地址(协议/网络地址/端口)只允许使用一次
- pecel
- html左右布局
- 配置管理--版本控制的目的
- mongoDB数据库常用命令
- magento中static block的使用
- Android打开多个Activity后返回到第一个Activity