рдореИрдВрдиреЗ рдордВрдЧрд▓ рдпрд╛ рдПрдХ рдЫреЛрдЯреЗ рдЕрдЬрдЧрд░ рдХреА рдЦреЛрдЬ рдХреЛ рдХреИрд╕реЗ рдмрдЪрд╛рдпрд╛

рдирдорд╕реНрддреЗ рд╡рд┐рд╢реНрд╡!

рдЕрдЧрд╕реНрдд 2018


рдпрд╣ рдмрд╛рд╣рд░ рдПрдХ рдЧрд░реНрдо рдЧрд░реНрдореА рд╣реИ, рдЖрд╕рд╛рдиреА рд╕реЗ рд╕рдорд╛рдкреНрдд рд╣реЛ рд░рд╣рд╛ рд╣реИ, рдФрд░ рдореИрдВ рдПрдХ рд▓реИрдкрдЯреЙрдк рдХреЗ рд╕рд╛рде рдПрдХ рд╢рд╛рдВрдд рдХрдорд░реЗ рдореЗрдВ рдмреИрдард╛ рд╣реВрдВ рдФрд░ рджрд┐рд▓рдЪрд╕реНрдк рдЪреАрдЬреЛрдВ рдХреА рддрд▓рд╛рд╢ рдореЗрдВ рдЗрдВрдЯрд░рдиреЗрдЯ рдкрд░ рд╕рд░реНрдлрд┐рдВрдЧ рдХрд░ рд░рд╣рд╛ рд╣реВрдВред рдзреНрдпрд╛рди рдХреЗ рдпреЛрдЧреНрдп рдХреБрдЫ рднреА рдкрд╛рдиреЗ рдХреА рдЙрдореНрдореАрдж рдЦреЛ рджреЗрдиреЗ рдХреЗ рдмрд╛рдж, рдореИрдВ рдЕрдЪрд╛рдирдХ рдПрдХ рдЕрдиреНрдп рдЖрдИрдЯреА рд╕рдВрд╕рд╛рдзрди рдХреЗ рд▓рд┐рдВрдХ рдХреЗ рд╕рд╛рде VKontakte рдкрд░ рдирд╣реАрдВ рдмрд▓реНрдХрд┐ рдкрд╛рд╕-рдкрд╛рд╕ рдХреЗ рд╢рд╛рдВрдд рд╕рдореВрд╣реЛрдВ рдореЗрдВ рд╕реЗ рдПрдХ рдХреЛ рдареЛрдХрд░ рдорд╛рд░рддрд╛ рд╣реВрдВред рдпрд╣ рдЦреЛрдЬ рдореБрдЭреЗ рджрд┐рд▓рдЪрд╕реНрдк рд▓рдЧреА, рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдПрдХ рдЕрдВрддрд░рд┐рдХреНрд╖ рд╕реЗрдЯрд┐рдВрдЧ рдореЗрдВ рд▓рдЧрднрдЧ рдПрдХ рдХреНрд▓рд╛рд╕рд┐рдХ рдкрд╛рда рдЦреЛрдЬ рд╣реИ, рдФрд░ рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ рдЖрдкрдХреЛ рдпрд╣рд╛рдВ рдХрд╛рд░реНрдпрдХреНрд░рдо рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ!



рдЗрд╕рд▓рд┐рдП, рдЗрд╕ рд▓реЗрдЦ рдореЗрдВ рд╣рдо рдЗрд╕ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХрд░реЗрдВрдЧреЗ рдХрд┐ рдореИрдВрдиреЗ рдЗрд╕ рдЦреЛрдЬ рдХреЛ рдХреИрд╕реЗ рд╣рд▓ рдХрд┐рдпрд╛ред

рд▓рд┐рдВрдХ рд╣рдореЗрдВ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдкрд╛рда рдХреЗ рд╕рд╛рде рдЦреЛрдЬ рдХреЗ рд▓рд┐рдП рдПрдХ рдкрд░рд┐рдЪрдп рдХреЗ рд╕рд╛рде рдЗрдВрддрдЬрд╛рд░ рдХрд░ рд░рд╣рд╛ рд╣реИ:

2022 . - KASP 120 .

, . , - KASP . тАФ .


рднрд╛рд╖рд╛ рдЪреБрдирдиреЗ рдХреЗ рдмрд╛рдж - C ++, C # рдФрд░ Python рдЙрдкрд▓рдмреНрдз рд╣реИрдВ, рд╣рдо "MCC рд╕реЗ рд╕рдВрджреЗрд╢" рд╡рд╛рд▓реЗ рдкреГрд╖реНрда рдХреА рдкреНрд░рддреАрдХреНрд╖рд╛ рдХрд░ рд░рд╣реЗ рд╣реИрдВ, рдЬреЛ рдПрдХ рд╡рд┐рд╢рд┐рд╖реНрдЯ рдПрдиреНрдХреЛрдбрд┐рдВрдЧ рдореЗрдВ рд╡рд░реНрдгреЛрдВ рдХрд╛ рдПрдХ рд╕рдореВрд╣ рд╣реИред рдЕрдЧрд▓реЗ рдЪрд░рдг рдкрд░ рдЬрд╛рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ рд╕рдВрджреЗрд╢ рдХреА рд▓рдВрдмрд╛рдИ рдмрдврд╝рд╛рдиреЗ рдФрд░ рдкреНрд░рд╛рдкреНрдд рд╕рдВрджреЗрд╢ рдХреЗ md5 рд╣реИрд╢ рдореЗрдВ рдкреНрд░рд╡реЗрд╢ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рдВрджреЗрд╢ рдХреЗ рдЯреБрдХрдбрд╝реЛрдВ рдХреЛ рдЫрд╛рдБрдЯрдХрд░ рд╕рдВрджреЗрд╢ рдХреЛ рдбрд┐рдХреЛрдб рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред
рд▓реЗрдХрд┐рди рдЖрдк рдХрд┐рд╕ рддрд░рд╣ рдХрд╣рддреЗ рд╣реИрдВ? рдпрд╣ рддрдереНрдп рдХрд┐ рдпрд╣ рд╕рдВрджреЗрд╢ рдПрдХ рдирд┐рд╢реНрдЪрд┐рдд рдПрдиреНрдХреЛрдбрд┐рдВрдЧ рд╣реИ, рддреБрд░рдВрдд рд╕реНрдкрд╖реНрдЯ рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ рдЬрд┐рд╕реЗ рдПрдХ рд╕рдорд╛рди рд╕рдВрд╕рд╛рдзрди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЖрд╕рд╛рдиреА рд╕реЗ рд╕рдордЭрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдПред

рдпрд╣ рд╕рдордЭрдиреЗ рдХреЗ рдмрд╛рдж рдХрд┐ рдпрд╣ рдмреЗрд╕ 64 рд╣реИ , рд╣рдо рдЗрд╕реЗ рдбрд┐рдХреЛрдб рдХрд░рдирд╛ рд╢реБрд░реВ рдХрд░рддреЗ рд╣реИрдВред рдореИрдВрдиреЗ рдЕрдЬрдЧрд░ рдореЗрдВ рдРрд╕рд╛ рдХрд┐рдпрд╛:

рдбрд┐рдХреЛрдб рдмреЗрд╕ 64:
 import base64 code = """=""" def base64ToString(b): return base64.b64decode(b).decode('utf-8') decodedJSON = base64ToString(code) print(decodedJSON) 

рдЖрдЙрдЯрдкреБрдЯ рдХреЗ рдмрд╛рдж, рдпрд╣ рд╕реНрдкрд╖реНрдЯ рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ рдХрд┐ рдбреЗрдЯрд╛ JSON рдкреНрд░рд╛рд░реВрдк рдореЗрдВ рдкреНрд░рд╕реНрддреБрдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ:

рдРрд╕рд╛ рдЬреИрд╕рди рд╣рдореЗрдВ рдорд┐рд▓рддрд╛ рд╣реИ:
[{"id":31,"s":"ony: 1 man"},{"id":27,"s":"de all spe"},{"id":61,"s":"s will fac"},{"id":55,"s":"out men, a"},{"id":42,"s":"ntists.\n2."},{"id":18,"s":"n. Our soc"},{"id":70,"s":"the planet"},{"id":5,"s":". One oper"},{"id":64,"s":" condition"},{"id":44,"s":"y have to "},{"id":49,"s":"st 51% of "},{"id":58,"s":"ists must "},{"id":71,"s":". Select p"},{"id":59,"s":"be male.\n3"},{"id":85,"s":"he followi"},{"id":43,"s":" The colon"},{"id":73,"s":" resilienc"},{"id":24,"s":"selection."},{"id":62,"s":"e all kind"},{"id":47,"s":"nerations,"},{"id":105,"s":"eople who "},{"id":103,"s":"rmation, s"},{"id":22,"s":"ias to sim"},{"id":86,"s":"ng format:"},{"id":2,"s":"p's lander"},{"id":36,"s":" computer "},{"id":48,"s":" so at lea"},{"id":16,"s":"for Mars c"},{"id":75,"s":"0 and more"},{"id":11,"s":". You have"},{"id":95,"s":"emale = 0,"},{"id":68,"s":"ple should"},{"id":41,"s":"s, 14 scie"},{"id":7,"s":", but is u"},{"id":98,"s":"e rating\ne"},{"id":0,"s":"Two of the"},{"id":101,"s":".\n\nKnowing"},{"id":33,"s":"oks, 4 ele"},{"id":97,"s":";Resilienc"},{"id":51,"s":"olonists m"},{"id":108,"s":"d Planet."},{"id":100,"s":"break - \\n"},{"id":60,"s":". Colonist"},{"id":40,"s":"8 mechanic"},{"id":78,"s":"100.\n\nThe "},{"id":1,"s":" three shi"},{"id":13,"s":"0 most app"},{"id":12,"s":" to pick 4"},{"id":93,"s":"ID;Profess"},{"id":104,"s":"elect 40 p"},{"id":39,"s":"5 medics, "},{"id":8,"s":"nable to c"},{"id":52,"s":"ust be fem"},{"id":96,"s":" male = 1)"},{"id":89,"s":"female = 0"},{"id":10,"s":" colonists"},{"id":65,"s":"s. Only th"},{"id":35,"s":"gineers, 5"},{"id":21,"s":"ree criter"},{"id":17,"s":"olonisatio"},{"id":54,"s":" forget ab"},{"id":15,"s":"andidates "},{"id":87,"s":" ID;Profes"},{"id":37,"s":"system spe"},{"id":79,"s":"file attac"},{"id":90,"s":", male = 1"},{"id":29,"s":"ssential f"},{"id":107,"s":"ize the Re"},{"id":6,"s":"ates fully"},{"id":66,"s":"e most res"},{"id":32,"s":"ager, 3 co"},{"id":63,"s":"s of harsh"},{"id":4,"s":"unctioning"},{"id":82,"s":"tains a li"},{"id":38,"s":"cialists, "},{"id":74,"s":"e rating 6"},{"id":77,"s":"from 1 to "},{"id":19,"s":"iologists "},{"id":3,"s":"s are malf"},{"id":53,"s":"ale. Don't"},{"id":23,"s":"plify the "},{"id":28,"s":"cialists e"},{"id":88,"s":"sion;Sex ("},{"id":94,"s":"ion;Sex (f"},{"id":106,"s":"will colon"},{"id":25,"s":"\n\n1. Crew "},{"id":102,"s":" this info"},{"id":91,"s":");Resilien"},{"id":81,"s":"s task con"},{"id":57,"s":"% of colon"},{"id":76,"s":" on scale "},{"id":30,"s":"or the col"},{"id":80,"s":"hed to thi"},{"id":14,"s":"ropriate c"},{"id":72,"s":"eople with"},{"id":69,"s":" colonize "},{"id":9,"s":"ontain 120"},{"id":20,"s":"defined th"},{"id":67,"s":"ilient peo"},{"id":50,"s":"selected c"},{"id":99,"s":"tc. \nLine "},{"id":83,"s":"st of colo"},{"id":56,"s":"t least 30"},{"id":84,"s":"nists in t"},{"id":34,"s":"ctrical en"},{"id":45,"s":"exist for "},{"id":92,"s":"ce rating\n"},{"id":26,"s":"must inclu"},{"id":46,"s":"several ge"}]


рд╕рд░рдгреА рдХреЗ рдкреНрд░рддреНрдпреЗрдХ рддрддреНрд╡ рдореЗрдВ "рдЖрдИрдбреА" рдПрдХ рдкреИрд░рд╛рдореАрдЯрд░ рд╣реИ - рдпрд╣ рдПрдХ рд╕реАрд░рд┐рдпрд▓ рдирдВрдмрд░ рд╣реИ, рдФрд░ рд╣рдо рдЗрд╕рдХреЗ рджреНрд╡рд╛рд░рд╛ рд╕рдВрджреЗрд╢ рдХреЗ рдЯреБрдХрдбрд╝реЗ рд╕реЙрд░реНрдЯ рдХрд░реЗрдВрдЧреЗред рдЖрдЗрдП рд╣рдорд╛рд░реЗ рдХреЛрдб рдХреЛ рдЬрдЯрд┐рд▓ рдХрд░реЗрдВ:

рдПрдиреНрд╣рд╛рдВрд╕рдореЗрдВрдЯ рдХреЗ рд╕рд╛рде рдкрд┐рдЫрд▓рд╛ рдХреЛрдб:
 import base64 import json import hashlib code = """=""" def base64ToString(b): return base64.b64decode(b).decode('utf-8') def sortbylen(sortlist): return sortlist[ids] decodedJSON = base64ToString(code) print(decodedJSON) sortString = json.loads(decodedJSON) sortList = list() for item in sortString: sortList.append(item) elem = sortList[0] ids = list(elem.keys())[0] messages = list(elem.keys())[1] sortList.sort(key=sortbylen) finallyDecodedString = '' for item in sortList: finallyDecodedString = finallyDecodedString + '' + str(item[messages]) print(finallyDecodedString + '\n') print('Md5 hash: ' + hashlib.md5(finallyDecodedString.encode('utf-8')).hexdigest()) 


рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк, рд╣рдореЗрдВ рд╕рдВрджреЗрд╢ рдорд┐рд▓рддрд╛ рд╣реИ рдФрд░ рд╕рдВрджреЗрд╢ рдХрд╛ md5 рд╣реИрд╢:

Two of the three ship's landers are malfunctioning. One operates fully, but is unable to contain 120 colonists. You have to pick 40 most appropriate candidates for Mars colonisation. Our sociologists defined three criterias to simplify the selection.

1. Crew must include all specialists essential for the colony: 1 manager, 3 cooks, 4 electrical engineers, 5 computer system specialists, 5 medics, 8 mechanics, 14 scientists.
2. The colony have to exist for several generations, so at least 51% of selected colonists must be female. Don't forget about men, at least 30% of colonists must be male.
3. Colonists will face all kinds of harsh conditions. Only the most resilient people should colonize the planet. Select people with resilience rating 60 and more on scale from 1 to 100.

The file attached to this task contains a list of colonists in the following format: ID;Profession;Sex (female = 0, male = 1);Resilience rating
ID;Profession;Sex (female = 0, male = 1);Resilience rating
etc.
Line break - \n.

Knowing this information, select 40 people who will colonize the Red Planet.

Md5 hash: 88f57ef56978a95f044183951eabef3b


рд╕рдВрджреЗрд╢ рдирд┐рдореНрди рдкреНрд░рд╛рд░реВрдк рдореЗрдВ рдХреЙрд▓реЛрдиреАрд╡рд╛рд╕рд┐рдпреЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЬрд╛рдирдХрд╛рд░реА рдХреЗ рд╕рд╛рде рдПрдХ рдлрд╝рд╛рдЗрд▓ рдХреЗ рд╕рд╛рде рд╣реИ:

1;electrical engineer;0;90
2;mechanic;0;77
3;scientist;1;71


рдкреНрд░рд╛рд░реВрдк рд╣реИ: рдЖрдИрдбреА; рдкреЗрд╢реЗ; рд▓рд┐рдВрдЧ (рдорд╣рд┐рд▓рд╛ = 0, рдкреБрд░реБрд╖ = 1); рд╕реНрдерд┐рд░рддрд╛ рд░реЗрдЯрд┐рдВрдЧ

рдпрд╣ рдкреНрд░рд╕реНрддрд╛рд╡рд┐рдд рд╣реИ рдХрд┐ 120 рдЙрдкрдирд┐рд╡реЗрд╢рд╡рд╛рджрд┐рдпреЛрдВ рдореЗрдВ рд╕реЗ, 40 рдХрд╛ рд╕реНрдХреЛрд░ рдкреВрд░рд╛ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП рдЬреЛ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдорд╛рдирджрдВрдбреЛрдВ рдХреЛ рдкреВрд░рд╛ рдХрд░рддрд╛ рд╣реИ:

  1. рдХреЙрд▓реЛрдиреА рдореЗрдВ 1 рдореИрдиреЗрдЬрд░, 3 рдХреБрдХ, 4 рдЗрд▓реЗрдХреНрдЯреНрд░реАрд╢рд┐рдпрди, 5 рдХрдВрдкреНрдпреВрдЯрд░ рд╡реИрдЬреНрдЮрд╛рдирд┐рдХ, 5 рдбреЙрдХреНрдЯрд░, 8 рдореИрдХреЗрдирд┐рдХ рдФрд░ 14 рд╡реИрдЬреНрдЮрд╛рдирд┐рдХ рд╣реЛрдиреЗ рдЪрд╛рд╣рд┐рдПред
  2. рдХреЙрд▓реЛрдирд┐рдпреЛрдВ рдХреЛ рдПрдХ рд╡рд░реНрд╖ рд╕реЗ рдЕрдзрд┐рдХ рд╕рдордп рддрдХ рдЕрд╕реНрддрд┐рддреНрд╡ рдореЗрдВ рд░рдЦрдирд╛ рд╣реЛрдЧрд╛, рдЗрд╕рд▓рд┐рдП рдХрдо рд╕реЗ рдХрдо 51% рдЖрдмрд╛рджреА рдорд╣рд┐рд▓рд╛рдУрдВ рдХреА рд╣реЛрдиреА рдЪрд╛рд╣рд┐рдПред рд▓реЗрдХрд┐рди рдХрдо рд╕реЗ рдХрдо 30% рдЙрдкрдирд┐рд╡реЗрд╢рд╡рд╛рджреА рдкреБрд░реБрд╖ рд╣реЛрдиреЗ рдЪрд╛рд╣рд┐рдПред
  3. рдПрдХ рдХреЙрд▓реЛрдиреА рдореЗрдВ рд░рд╣рдирд╛ рдЗрддрдирд╛ рдЖрд╕рд╛рди рдФрд░ рдордЬреЗрджрд╛рд░ рдирд╣реАрдВ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдЖрдкрдХреЛ рдХреЗрд╡рд▓ рдЙрди рдЙрдореНрдореАрджрд╡рд╛рд░реЛрдВ рдХрд╛ рдЪрдпрди рдХрд░рдирд╛ рд╣реЛрдЧрд╛ рдЬрд┐рдирдХреА рд╕реНрдерд┐рд░рддрд╛ рд░реЗрдЯрд┐рдВрдЧ 1 рд╕реЗ 100 рдХреЗ рдкреИрдорд╛рдиреЗ рдкрд░ 60 рдпрд╛ рдЕрдзрд┐рдХ рдЗрдХрд╛рдЗрдпрд╛рдВ рд╣реИред

рдФрд░ рдЕрдм рд╣рдо рдЙрдкрдирд┐рд╡реЗрд╢рд╡рд╛рджрд┐рдпреЛрдВ рдХреЗ рдЪрдпрди рдХреЗ рд▓рд┐рдП рдЖрдЧреЗ рдмрдврд╝рддреЗ рд╣реИрдВ!

рд╣рдо рдЪреБрдиреЗрдВ ...
 import random import math import sys colonists_list = list() new_colonists_list_male = list() new_colonists_list_female = list() manager_fem_list = list() manager_mal_list = list() cook_fem_list = list() cook_mal_list = list() elen_fem_list = list() elen_mal_list = list() compspec_fem_list = list() compspec_mal_list = list() doc_fem_list = list() doc_mal_list = list() mech_fem_list = list() mech_mal_list = list() sci_fem_list = list() sci_mal_list = list() lucky_colonists = list() luck_list = [random.randint(0, 100) for i in range(100)] managers = 1 cooks = 3 electrical_engineers = 4 computer_system_specialists = 5 medics = 5 mechanics = 8 scientists = 14 def pick_percentage(low, high): return random.randint(low, high)/100 perc_male = pick_percentage(30, 49) perc_female = pick_percentage(51, 69) quantity_required = 40 quantity_of_women_required = math.ceil(quantity_required * perc_female) min_percentage_fem = quantity_of_women_required/quantity_required quantity_of_men_required = quantity_required * perc_male min_percentage_mal = quantity_of_men_required/quantity_required unsorted_list = list() while 1: try: line = input() except EOFError: break unsorted_list.append(line) sorted_list = list() for i in unsorted_list: sorted_list.append(i.split(';')) #    for item in sorted_list: if int(item[3]) >= 60: colonists_list.append(item) counter = 0 conditions = "1. Crew must include all specialists essential for the colony: 1 manager, 3 cooks," \ " 4 electrical engineers, 5 computer system specialists, 5 medics, 8 mechanics, 14 " \ "scientists. 2. The colony have to exist for several generations, so at least 51% " \ "of selected colonists must be female. Don't forget about men, at least 30% of colonists must be male."\ "3. Colonists will face all kinds of harsh conditions. Only the most resilient people should colonize " \ "the planet. Select people with resilience rating 60 and more on scale from 1 to 100." #   for item in colonists_list: if int(item[2]) == 0: new_colonists_list_female.append(item) #   for item in colonists_list: if int(item[2]) == 1: new_colonists_list_male.append(item) #     for item in new_colonists_list_female: if item[1] == 'manager': manager_fem_list.append(item) if item[1] == 'cook': cook_fem_list.append(item) if item[1] == 'electrical engineer': elen_fem_list.append(item) if item[1] == 'computers specialist': compspec_fem_list.append(item) if item[1] == 'doctor': doc_fem_list.append(item) if item[1] == 'mechanic': mech_fem_list.append(item) if item[1] == 'scientist': sci_fem_list.append(item) #     for item in new_colonists_list_male: if item[1] == 'manager': manager_mal_list.append(item) if item[1] == 'cook': cook_mal_list.append(item) if item[1] == 'electrical engineer': elen_mal_list.append(item) if item[1] == 'computers specialist': compspec_mal_list.append(item) if item[1] == 'doctor': doc_mal_list.append(item) if item[1] == 'mechanic': mech_mal_list.append(item) if item[1] == 'scientist': sci_mal_list.append(item) #   def percentage_is_ok(colonists): female_quantity = 0 female_is_ok = 1 male_is_ok = 1 for i in colonists: if int(i[2]) == 0: female_quantity = female_quantity + 1 percentage_female = female_quantity/int(len(colonists)) percentage_male = 1 - percentage_female if percentage_female < min_percentage_fem: female_is_ok = 0 elif percentage_male < min_percentage_mal: male_is_ok = 0 return [female_is_ok, male_is_ok, percentage_female, percentage_male, female_quantity] def choose_colonists(female, male, quantity, resulting_list): for i in range(quantity): if int(percentage_is_ok(resulting_list)[0]) == 0 and len(female) > 0: colonist_choice = random.choice(female) resulting_list.append(colonist_choice) female.remove(colonist_choice) elif int(percentage_is_ok(resulting_list)[1]) == 0 and len(male) > 0: colonist_choice = random.choice(male) resulting_list.append(colonist_choice) male.remove(colonist_choice) else: if len(male) > 0 and len(female) > 0: sex_choice = random.choice([female, male]) colonist_choice = random.choice(sex_choice) resulting_list.append(colonist_choice) sex_choice.remove(colonist_choice) else: if len(male) == 0: colonist_choice = random.choice(female) resulting_list.append(colonist_choice) sex_choice.remove(colonist_choice) elif len(female) == 0: colonist_choice = random.choice(male) resulting_list.append(colonist_choice) sex_choice.remove(colonist_choice) #  if int(random.choice(luck_list)) >= 50: choice = random.choice(manager_fem_list) lucky_colonists.append(choice) else: choice = random.choice(manager_mal_list) lucky_colonists.append(choice) #  choose_colonists(cook_fem_list, cook_mal_list, cooks, lucky_colonists) #  choose_colonists(elen_fem_list, elen_mal_list, electrical_engineers, lucky_colonists) #   choose_colonists(compspec_fem_list, compspec_mal_list, computer_system_specialists, lucky_colonists) #  -   doctors_left = 1 for i in range(medics): if int(percentage_is_ok(lucky_colonists)[0]) == 0: choice = random.choice(doc_fem_list) lucky_colonists.append(choice) doc_fem_list.remove(choice) elif doctors_left > 0: choice = random.choice(doc_mal_list) lucky_colonists.append(choice) doc_mal_list.remove(choice) doctors_left = 0 else: choice = random.choice(doc_fem_list) lucky_colonists.append(choice) doc_fem_list.remove(choice) #  -   mechanics_male_left = 6 for i in range(mechanics): if int(percentage_is_ok(lucky_colonists)[0]) == 0: choice = random.choice(mech_fem_list) lucky_colonists.append(choice) mech_fem_list.remove(choice) elif mechanics_male_left > 0: choice = random.choice(mech_mal_list) lucky_colonists.append(choice) mech_mal_list.remove(choice) mechanics_male_left = mechanics_male_left - 1 else: choice = random.choice(mech_fem_list) lucky_colonists.append(choice) #  choose_colonists(sci_fem_list, sci_mal_list, scientists, lucky_colonists) colonists_string = '' for item in lucky_colonists: colonists_string = colonists_string + item[0] + ';' colonists_string = colonists_string[0:len(colonists_string)-1] # sys.stdout.write(colonists_string) 


рд╕рд╛рдЗрдЯ рдкрд░ рдлреЙрд░реНрдо рдХреЛрдб рд▓реЗрддрд╛ рд╣реИ рдФрд░ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рдЗрд╕рдХрд╛ рдкрд░реАрдХреНрд╖рдг рдХрд░рддрд╛ рд╣реИред рдбреЗрдЯрд╛ рдХреЛ рдорд╛рдирдХ рдЗрдирдкреБрдЯ рд╕реНрдЯреНрд░реАрдо рд╕реЗ рдЖрдкреВрд░реНрддрд┐ рдХреА рдЬрд╛рддреА рд╣реИ, рдЙрд╕реА рдХрд╛рд░рдг рд╕реЗ, рдЖрдкрдХреЛ рдЗрд╕реЗ рд╡рд╣рд╛рдВ рд╕реЗ рдкрдврд╝рдирд╛ рд╣реЛрдЧрд╛, рдЬреЛ рд▓рд┐рдЦрддреЗ рд╕рдордп рдХреЛрдб рдкрд░реАрдХреНрд╖рдг рдХреЛ рдереЛрдбрд╝рд╛ рдЬрдЯрд┐рд▓ рдХрд░рддрд╛ рд╣реИред

рдЬрдирд╡рд░реА 2019


рдореИрдВ рдЖрдкрдХреЗ рд╕рд╛рде рдЗрд╕ рддрд░рд╣ рдХреЗ quests рдореЗрдВ рднрд╛рдЧ рд▓реЗрдиреЗ рдХреЗ рджрд┐рд▓рдЪрд╕реНрдк рдЕрдиреБрднрд╡ рдХреЛ рд╕рд╛рдЭрд╛ рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рдерд╛ред рдореЗрд░реЗ рд▓рд┐рдП, рд╡рд╣ рдкрд╣рд▓рд╛ рдерд╛ред рдпрд╣ рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдкреНрд░рддрд┐рд╕реНрдкрд░реНрдзреА рдЖрдзрд╛рд░ рдХреЗ рдмрд┐рдирд╛ рднреА рд╡рд┐рдЪрд╛рд░ рджрд┐рд▓рдЪрд╕реНрдк рд╣реИред рд╡реНрдпрдХреНрддрд┐рдЧрдд рд░реВрдк рд╕реЗ, рдореИрдВрдиреЗ рд╡рд┐рднрд┐рдиреНрди рдкреНрд░рдХрд╛рд░ рдХреЗ рдХрд╛рд░реНрдпреЛрдВ рдХреЗ 5 рдЯреБрдХрдбрд╝реЗ рд╣рд▓ рдХрд┐рдПред рдореИрдВрдиреЗ рдмрд╛рдХреА рдХреЛ рдЧреАрдереВрдм рдХреЗ рд▓рд┐рдВрдХ рдкрд░ рд░рдЦ рджрд┐рдпрд╛ред

рдФрд░ рдпрд╣ рднреА, рдПрдХ рдЗрдирд╛рдо рдХреЗ рд░реВрдк рдореЗрдВ, рдЕрдВрдд рдореЗрдВ рдЖрдкрдХреЗ рд╕рдордп рдХреЗ рд╕рд╛рде рдПрдХ рд░реЗрдЯрд┐рдВрдЧ рддрд╛рд▓рд┐рдХрд╛ рд╣реИред рдореЗрд░реЗ рд▓рд┐рдП, рд╕рдмрд╕реЗ рдЕрдЪреНрдЫрд╛ рдкрд░рд┐рдгрд╛рдо рдпрд╣ рдерд╛:



рдкрд░рд┐рдгрд╛рдо, 400+ рд╕реЗ рдЕрдзрд┐рдХ рдкреНрд░рддрд┐рднрд╛рдЧрд┐рдпреЛрдВ рдореЗрдВ рд╕реЗ рдПрдХ рдкреНрд░рддреАрдХрд╛рддреНрдордХ 50 рд╡рд╛рдВ рд╕реНрдерд╛рдиред

рдЗрд╕ рдмрд╛рд░реЗ рдореЗрдВ рдХреНрдпрд╛ рдХрд╣рд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ? рдореЗрд░реЗ рд▓рд┐рдП рдпрд╣ рдПрдХ рд░реЛрдорд╛рдВрдЪрдХ рд╕рдордп рдмрд┐рддрд╛рдпрд╛ рдЧрдпрд╛ рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рдерд╛ред рд╡реИрд╕реЗ, рдЕрд╕рд╛рдЗрдирдореЗрдВрдЯ рдЕрднреА рднреА рдЙрди рд▓реЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП рдЙрдкрд▓рдмреНрдз рд╣реИрдВ рдЬреЛ рдЙрдиреНрд╣реЗрдВ рд╣рд▓ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рдЗрд╕ рддрдереНрдп рдХреЗ рдмрд╛рд╡рдЬреВрдж рдХрд┐ рдкреНрд░рддрд┐рдпреЛрдЧрд┐рддрд╛ рд▓рдВрдмреЗ рд╕рдордп рд╕реЗ рдкреВрд░реА рд╣реЛ рдЧрдИ рд╣реИред

Source: https://habr.com/ru/post/hi435286/


All Articles