[Phothon]ポンキモン
4479 ワード
プログラミングマスターを探して>ポンギモン
[問題の説明]
長い旅行を経て、あなたはやっと洪博士の研究室に着いた.洪博士はあなたに教えて、あなたは自分の実験室の全部のN匹の携帯電話の殻の中からN/2匹を持っていくことができます.
ホン博士研究室のボンケンモンは種類番号で区別されている.そのため、同じタイプの携帯電話のガードプロセスには同じ番号があります.例えば、研究室に4つの携帯電話のケースがある場合、各携帯電話のケースの種類番号は[3号、1号、2号、3号]で、3号携帯電話のケースが2つ、1号携帯電話のケースが2つ、2号携帯電話のケースが2つあることを示しています.このとき、4つのケースの中から2つを選ぶ方法は、以下の6つがあります.第1号(3号)、第2号(1号)携帯電話守護プロセス を選択第1回(3回)、第3回(2回)携帯電話守護プロセス を選択最初の(3)、4番目の(3)携帯電話のガードプロセス を選択第2(1)、第3(2)携帯電話守護プロセス を選択する.第2(1)、第4(3)携帯電話守護プロセス を選択する.第3(2)、第4(3)携帯電話守護プロセス を選択
この場合、1番目(3番)のphonecketmonと4番目(3番)のphonecketmonを選択する方法は1つ(3番のphonecketmonの2つ)のphonecketmonしかありませんが、他の方法は2つのphonecketmonがあります.したがって、上記の例では、携帯電話のケースタイプ数の最大値は2です.
可能な限り多くの携帯電話の保護プロセスを望んでいるので、できるだけ多くの携帯電話の保護プロセスを含むN/2を選択したいと思っています.
n個の携帯電話ガードプロセスタイプ番号を含む配列numsをパラメータとして指定すると、N/2個の携帯電話ガードプロセスを選択する方法のうち、最も多くのタイプの携帯電話ガードプロセスを選択する方法を見つけ、解法関数を完了し、当時の携帯電話ガードプロセスタイプ番号の個数を返す.
[制限] numsは、携帯電話のデーモンプロセスのタイプ番号を含む1次元配列です. numsの長さ(N)は1または10000以下の自然数であり、常に偶数である. 携帯電話のガードプロセスのタイプ番号は1または2万0以下の自然数です. 最も多くのタイプの携帯電話のデーモンを選択する方法が複数ある場合は、最大1つの選択可能な携帯電話のデーモンタイプの値を返すだけでよい. [I/O例]
私の答え
set()関数で繰り返されるphonketmonの種類を削除した. 携帯電話のデーモンの種類がN/2個より多い場合、インデックスで持ち去ることができる携帯電話のデーモンの種類は制限されます.
一気に満足して、他の人の簡潔なコードを見て感嘆します......もっと頑張れ...😂
他の人の解答#1 min()関数を用いてif文がない場合に簡単に表す.
[問題の説明]
長い旅行を経て、あなたはやっと洪博士の研究室に着いた.洪博士はあなたに教えて、あなたは自分の実験室の全部のN匹の携帯電話の殻の中からN/2匹を持っていくことができます.
ホン博士研究室のボンケンモンは種類番号で区別されている.そのため、同じタイプの携帯電話のガードプロセスには同じ番号があります.例えば、研究室に4つの携帯電話のケースがある場合、各携帯電話のケースの種類番号は[3号、1号、2号、3号]で、3号携帯電話のケースが2つ、1号携帯電話のケースが2つ、2号携帯電話のケースが2つあることを示しています.このとき、4つのケースの中から2つを選ぶ方法は、以下の6つがあります.
この場合、1番目(3番)のphonecketmonと4番目(3番)のphonecketmonを選択する方法は1つ(3番のphonecketmonの2つ)のphonecketmonしかありませんが、他の方法は2つのphonecketmonがあります.したがって、上記の例では、携帯電話のケースタイプ数の最大値は2です.
可能な限り多くの携帯電話の保護プロセスを望んでいるので、できるだけ多くの携帯電話の保護プロセスを含むN/2を選択したいと思っています.
n個の携帯電話ガードプロセスタイプ番号を含む配列numsをパラメータとして指定すると、N/2個の携帯電話ガードプロセスを選択する方法のうち、最も多くのタイプの携帯電話ガードプロセスを選択する方法を見つけ、解法関数を完了し、当時の携帯電話ガードプロセスタイプ番号の個数を返す.
[制限]
私の答え
考えてみろ!
def solution(nums):
count = int(len(nums)/2) # N/2마리
nums = list(set(nums))
if len(nums)>count:
answer = len(nums[:count])
else:
answer = len(nums)
return answer
一気に満足して、他の人の簡潔なコードを見て感嘆します......もっと頑張れ...😂
他の人の解答#1
def solution(ls):
return min(len(ls)/2, len(set(ls)))
参考にしてください!
Reference
この問題について([Phothon]ポンキモン), 我々は、より多くの情報をここで見つけました https://velog.io/@eunvi/python폰켓몬テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol