[李.酔.鼻.泰>序列>実戦問題]2つの配列の要素を交換する
問題の説明
東彬にはAとBの2つの配列がある.2つの配列はN個の要素からなり,配列中の要素はいずれも自然数である.東彬は最大K回の置換演算を実行することができ、置換演算とは配列Aの1つの要素と配列Bの1つの要素を選択し、2つの要素を互いに置換することを指す.東彬の最終目標は配列Aのすべての要素の和を最大にすることであり、東彬を助けなければならない.N,Kおよび配列A,Bの情報が与えられた場合、配列A内のすべての要素の最大値を出力し、最大K回の置換操作を実行するプログラムを作成します.
に近づく
最大交換k回
条件:k回以下>特定の条件を満たす場合の演算
アレイAの要素とアレイBの要素を選択し、2つの要素を交換します.
スワップ
すべての要素の和を最大にする...
最大>ソート>降順(Maximum>Sort>Descending)
に答える
n, k= map(int, input().split())
a= list(map(int, input('a의 원소입력:').split()))
b= list(map(int, input('b의 원소입력:').split()))
a.sort()
b.sort(reverse=True)
for i in range(k):
if a[i] < b[i]:
a[i], b[i]= b[i], a[i]
else:
break
print(sum(a))
学識
複数の入力値を変換するときにmap()関数を使用する
実行回数が最大条件を満たしているかどうかを確認します
Reference
この問題について([李.酔.鼻.泰>序列>実戦問題]2つの配列の要素を交換する), 我々は、より多くの情報をここで見つけました
https://velog.io/@one1_programmer/이.취.코.테정렬두-배열의-원소-교체
テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol
最大交換k回
条件:k回以下>特定の条件を満たす場合の演算
アレイAの要素とアレイBの要素を選択し、2つの要素を交換します.
スワップ
すべての要素の和を最大にする...
最大>ソート>降順(Maximum>Sort>Descending)
に答える
n, k= map(int, input().split())
a= list(map(int, input('a의 원소입력:').split()))
b= list(map(int, input('b의 원소입력:').split()))
a.sort()
b.sort(reverse=True)
for i in range(k):
if a[i] < b[i]:
a[i], b[i]= b[i], a[i]
else:
break
print(sum(a))
学識
複数の入力値を変換するときにmap()関数を使用する
実行回数が最大条件を満たしているかどうかを確認します
Reference
この問題について([李.酔.鼻.泰>序列>実戦問題]2つの配列の要素を交換する), 我々は、より多くの情報をここで見つけました https://velog.io/@one1_programmer/이.취.코.테정렬두-배열의-원소-교체テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol