[プログラマー]ターゲット番号Python
3220 ワード
質問する
https://programmers.co.kr/learn/courses/30/lessons/43165
n個の非負の整数.この数字を適当に加算または減算してターゲット番号を作成したいです.たとえば、[1,1,1,1,1,1]で数値3を作成するには、次の5つの方法があります.
使用可能な数値の配列番号、ターゲット番号のターゲットをパラメータとして指定したときに、適切に数値を加算して減算して、ターゲット番号を作成する方法の数を返します.
せいげんじょうけん
I/O例
入力
numbers = [1,1,1,1,1]
target = 3
しゅつりょく
return = 5
[#Clone]ソリューション関数python
::Pythonのitertools。productを使用して、リストに表示される可能性のあるすべての状況の数を検索し、一致する値を検索します。
from itertools import product
def solution(numbers, target):
l = [(x, -x) for x in numbers]
s = list(map(sum, product(*l)))
return s.count(target)
ソース:プログラマの回答
Python itertools.product
Python itertoolsの詳細
ex. 1)itertools.product('abc',repeat=2)
#결과 값 = aa,ab,ac,ba,bb,bc,ca,cb,cc
ex. 2)
問題の入力をnumbers=[1,2,3,4,5]に変更すると、list(product(*l))の結果をより簡単に表示できます.
注意:https://velog.io/@davkim1030/Python-%EC%88%9C%EC%97%B4-%EC%A1%B0%ED%95%A9-product-itertools
Reference
この問題について([プログラマー]ターゲット番号Python), 我々は、より多くの情報をここで見つけました
https://velog.io/@guswl8280/programmers-타겟-넘버-Python
テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol
::Pythonのitertools。productを使用して、リストに表示される可能性のあるすべての状況の数を検索し、一致する値を検索します。
from itertools import product
def solution(numbers, target):
l = [(x, -x) for x in numbers]
s = list(map(sum, product(*l)))
return s.count(target)
ソース:プログラマの回答Python itertools.product
Python itertoolsの詳細
ex. 1)itertools.product('abc',repeat=2)
#결과 값 = aa,ab,ac,ba,bb,bc,ca,cb,cc
ex. 2)
問題の入力をnumbers=[1,2,3,4,5]に変更すると、list(product(*l))の結果をより簡単に表示できます.
注意:https://velog.io/@davkim1030/Python-%EC%88%9C%EC%97%B4-%EC%A1%B0%ED%95%A9-product-itertools
Reference
この問題について([プログラマー]ターゲット番号Python), 我々は、より多くの情報をここで見つけました
https://velog.io/@guswl8280/programmers-타겟-넘버-Python
テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol
itertools.product('abc',repeat=2)
#결과 값 = aa,ab,ac,ba,bb,bc,ca,cb,cc
Reference
この問題について([プログラマー]ターゲット番号Python), 我々は、より多くの情報をここで見つけました https://velog.io/@guswl8280/programmers-타겟-넘버-Pythonテキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol