当前位置:网站首页>7-11 mechanic mustadio (PTA program design)
7-11 mechanic mustadio (PTA program design)
2022-07-06 13:56:00 【Programming Lindaiyu】
stay MMORPG《 Final fantasy 14》 Copy of “ A place of pleasure, oubona monastery ” in ,BOSS Mechanic mstadio will accept the player's challenge .
You need to process this copy, one of the mechanisms :N×M The size of the map is split into N×M individual 1×1 Lattice of ,BOSS Will select several rows or / And several columns of release skills , Players cannot stand on a square that releases skills , Otherwise you will be hit and fail .
Given BOSS All row or column information for releasing skills , Please calculate how many grids are safe in the end .
Input format :
The first line of input is three integers N,M,Q (1≤N×M≤105,0≤Q≤1000), Indicates that the map is N That's ok M Column size and selected rows / Number of columns .
Next Q That's ok , Two numbers per line Ti,Ci, among Ti=0 Express BOSS A whole row is selected ,Ti=1 Indicates that an entire column is selected ,Ci Select the line number for / Column number . The numbers of rows and columns are from 1 Start .
Output format :
Output a number , Indicates the number of safety grids .
sample input :
5 5 3
0 2
0 4
1 3
sample output :
12
Code (Python):
n,m,q=map(int,input().split()) # The first line of input is three integers N,M,Q , Indicates that the map is N That's ok M Column size and selected rows / Number of columns .
list1=[] # Store map
list2=[] # The number of rows or columns storing the data to be deleted , That is, input the number in the sample except the first line
for i in range(n): # Initialize the 2D list , That is, build a map , Make its values all 1
h=[] # This is actually equivalent to list1 There is n Elements , Each element has m Elements , Composition n*m The map of
for j in range(m):
h.append(1)
list1.append(h)
for i in range(q): # Input of two-dimensional array , I will store the number in the input sample in the form of a two-dimensional list except the first line
s=input()
list2.append([int(n) for n in s.split()]) # Notice the square brackets inside
for i in range(q): # To delete
x=list2[i][1]-1 # See which row or column you want to delete , Because the rows or columns in the question are from 1 At the beginning , And in the list is from 0 At the beginning , So we need to reduce 1
if list2[i][0]==0: # Delete a whole line
for j in range(m): # When deleting rows, see how many columns ,m Column
list1[x][j]=0 # Use to place 0 Said to delete
if list2[i][0]==1: # Delete an entire column
for j in range(n): # See how many rows there are when deleting columns ,n That's ok
list1[j][x]=0 # Use to place 0 Said to delete
count=0 # Number of safety grids
for i in range(n): # Traverse the map , Look, how many are there 1, That is, there are several safety grids
for j in range(m):
if list1[i][j]==1:
count+=1
print(count) # Output the number of safety grids
When I first saw this problem, I thought it was very difficult , Because it looks complicated . But I still tried it , It's not difficult to find , Is the most basic mathematical knowledge , There is no hard Algorithm . therefore , When you come across a seemingly difficult problem , And don't give up , Try to do it , To analyze , Maybe it's not very difficult , Or maybe it's really a little difficult , But how do you know if you will not try , What if you make it yourself ? So don't set limits on yourself , Try boldly , To challenge .
The above program gives more detailed comments , For novice Xiaobai's reference . The idea of program design or code implementation is not optimal , You are welcome to correct your mistakes or give better ideas .
I am a rookie who wants to be Kunpeng , Everyone's encouragement is my driving force , Welcome to like collection comments !
边栏推荐
- QT meta object qmetaobject indexofslot and other functions to obtain class methods attention
- 7-3 construction hash table (PTA program design)
- 甲、乙机之间采用方式 1 双向串行通信,具体要求如下: (1)甲机的 k1 按键可通过串行口控制乙机的 LEDI 点亮、LED2 灭,甲机的 k2 按键控制 乙机的 LED1
- 【黑马早报】上海市监局回应钟薛高烧不化;麦趣尔承认两批次纯牛奶不合格;微信内测一个手机可注册俩号;度小满回应存款变理财产品...
- 强化学习基础记录
- [面試時]——我如何講清楚TCP實現可靠傳輸的機制
- Leetcode.3 无重复字符的最长子串——超过100%的解法
- 7-15 h0161. 求最大公约数和最小公倍数(PTA程序设计)
- 撲克牌遊戲程序——人機對抗
- Brief introduction to XHR - basic use of XHR
猜你喜欢
Canvas foundation 2 - arc - draw arc
Strengthen basic learning records
仿牛客技术博客项目常见问题及解答(三)
Callback function ----------- callback
记一次猫舍由外到内的渗透撞库操作提取-flag
Difference and understanding between detected and non detected anomalies
Differences among fianl, finally, and finalize
This time, thoroughly understand the MySQL index
Intensive literature reading series (I): Courier routing and assignment for food delivery service using reinforcement learning
深度强化文献阅读系列(一):Courier routing and assignment for food delivery service using reinforcement learning
随机推荐
A comprehensive summary of MySQL transactions and implementation principles, and no longer have to worry about interviews
7-15 h0161. Find the greatest common divisor and the least common multiple (PTA program design)
编写程序,模拟现实生活中的交通信号灯。
Zatan 0516
Miscellaneous talk on May 27
Detailed explanation of redis' distributed lock principle
Reinforcement learning series (I): basic principles and concepts
强化学习系列(一):基本原理和概念
记一次猫舍由外到内的渗透撞库操作提取-flag
深度强化文献阅读系列(一):Courier routing and assignment for food delivery service using reinforcement learning
2022 Teddy cup data mining challenge question C idea and post game summary
7-5 走楼梯升级版(PTA程序设计)
使用Spacedesk实现局域网内任意设备作为电脑拓展屏
这次,彻底搞清楚MySQL索引
Using spacedesk to realize any device in the LAN as a computer expansion screen
7-3 构造散列表(PTA程序设计)
Package bedding of components
String ABC = new string ("ABC"), how many objects are created
【educoder数据库实验 索引】
实验四 数组