백준 2798番 ブラックジャック Python の解法

힘센캥거루
2024년 12월 5일(수정됨)
1
16

ブルートフォースアルゴリズムは単に力任せにやるものだと考えればよい。

時間もメモリもたっぷりあるのだから、できないことがあるだろうか?

カードを3枚選ぶのだから、for文を3回回せばよい。

ただし、同じカードを選ぶ条件には注意しよう。

詳しくは下に書いてある。

詳しい説明は面倒なので省略する。

# sys.stdin.readline을 이용해 데이터를 받는다.
from sys import stdin
put = stdin.readline

# 카드의 수, 그리고 목표 숫자를 받는다.
# 카드 숫자들은 map으로 쪼갠 뒤, list로 변환한다.
numOfCard, targetNum = map(int, put().split())
cardLst = list(map(int, put().split()))

# 총합들과 차이를 저장한다.
totals = []
diff = []

# 3장의 카드가 필요하므로 3번의 for문을 돈다.
# 카드리스트에서 카드를 한장씩 뽑는다.
for i in cardLst:
    for j in cardLst:
        for k in cardLst:
        
        	# 문제는 같은 카드를 뽑을 수 있다는 것.
            # 같은 카드를 뽑으면 넘어간다.
            if i == j or i == k or j == k:
                continue
                
            # 총합을 구한다.
            # 총합이 목표 숫자보다 크면 넘어간다.
            total = i + j + k
            if targetNum - total < 0 :
                continue
                
            # 조건을 모두 통과하면 총합과 차이값을 저장한다.
            totals.append(total)
            diff.append(targetNum - total)
            
# 차이값들 중 최솟값의 인덱스를 구한다. 
# totals에서 최솟값의 인덱스를 넣어 출력한다.
print(totals[diff.index(min(diff))])
백준 2798番 ブラックジャック Python の解法-1

관련 글

学校業務の自動化 - AIを利用した生活記録簿チェック 教科別・特別記述編
学校業務の自動化 - AIを利用した生活記録簿チェック 教科別・特別記述編
学校で最も意味がなく、きつくて退屈な業務を一つ挙げろと言われたら、自分は生活記録簿(生徒指導要録)チェックを選ぶだろう。中学校では生活記録簿がそれほど重要ではないが、高等学校では入試と関係しているため非常に重要である。問題は、このような生活記録簿の点検で探すものが、せいぜい単純な誤字脱字、記載禁止用...
ゼロから作りながら学ぶ LLM 第7章 読書レビューとチャレンジの感想
ゼロから作りながら学ぶ LLM 第7章 読書レビューとチャレンジの感想
第7章の内容は、指示に従うように微調整するプロセスだ。ある質問に対して、期待する応答を返すようにすること。やはり必要なのはデータである。1. 指示微調整の手順ここでの要点は、質問と応答のデータセットを用意し、入力-出力のペアとして学習させること。これをプロンプトスタイルと呼ぶ。その他は以前のプロセス...
ゼロから作りながら学ぶ LLM 第6章 読書レビュー
ゼロから作りながら学ぶ LLM 第6章 読書レビュー
第6章は、分類のためのファインチューニングについてである。例として出てくるのは、スパム分類器の作成。スパム分類器は、あるメールなどがスパムかスパムでないかを分類するものなので、出力結果は 0 や 1 のような値になる必要がある。1. ファインチューニングの手順ファインチューニングのプロセスは、モデル...
ゼロから作りながら学ぶ LLM 第5章 読書レビュー
ゼロから作りながら学ぶ LLM 第5章 読書レビュー
今日は12月14日だ。実はチャレンジ期間はすでに2週間も過ぎてしまったが、だからといってレビューを書くのをあきらめることはできなかった。こうして残しておくTILが、あとで自分の血となり肉となるからだ。コードそのものよりも、その意味に集中して書いてみようと思う。1. モデルの損失計算GPTモデルを作っ...
ゼロから作りながら学ぶ LLM 第4章 読書レビュー
ゼロから作りながら学ぶ LLM 第4章 読書レビュー
今日は11月26日なので、毎日1章ずつ読み切ればチャレンジ成功だ。長男と次男の妨害の中で、それが可能かどうかは分からない。1. ダミー・トランスフォーマーGPTモデルを作りながら、PyTorchからトランスフォーマーのダミーブロックを持ってくる箇所を見た。調べてみると、PyTorch の nn の中...
ゼロから作りながら学ぶLLM第3章読書感想
ゼロから作りながら学ぶLLM第3章読書感想
MacBookに大量の水をこぼしてパニックになり、3〜4日無駄にした。今考えてみると、どうせMacBookは駄目になったし、修理に出すと思って何かをすればよかったと思う。とにかく少し遅れたけど、最後までやるべきだと思い、第3章の感想を残す。1. アテンションメカニズム3章...

댓글을 불러오는 중...