Codeforces Round 931 (Div. 2) (A~B)

比賽:Codeforces Round 931 (Div. 2) (A~B)

目錄:A B

A題:Too Min Too Max

標簽: 構造算法(constructive algorithms)貪心(greedy)數學(math)

題目大意

  • 對數組 a 找到四個不同下標 i, j, k, l ,最大化:
    • |ai ? aj| + |aj ? ak| + |ak ? al| + |al ? ai|

思路

  • 因為選擇四個數構成一個環,去相鄰差值和,貪心四個值應該 大數 小數 大數 小數 交替擺放,可以證明這是最優的
  • 一個數最多出現一次,所以找到最大,次大值,最小,次小值交替擺放即可

AC代碼

#include <bits/stdc++.h>
using namespace std;
const int N = 110;
int a[N];
void solve()
{int n; cin >> n;for(int i = 0; i < n; i++)cin >> a[i];sort(a, a + n);cout << (a[n-1]+a[n-2]-a[0]-a[1])*2 << '\n';
} 
int main()
{int T; cin >> T;while(T--)solve();return 0;
}

B題:Yet Another Coin Problem

標簽: 暴力枚舉(brute force)動態規劃(dp)貪心(greedy)數學(math)

題目大意

  • 有 5 種不同的硬幣,面額為1 3 6 10 15
  • 找出所需的最少數量的這些硬幣,使它們的總價值相加正好是 n (1 ≤ n ≤ 109)

思路

  • 貪心:1 3 6 10 15最大公約數是30,除了小于30的部分其他用15面額的硬幣填充
  • 小于30的部分用dp即可,完全背包問題。當然手動模擬也行反正沒幾項hh
  • 選擇n / 15 - 1個15面額的硬幣,剩余錢數n%15+15 dp即可

AC代碼

#include <bits/stdc++.h>
using namespace std;
int dp[30]={0,1,2,1,2,3,1,2,3,2,1,2,2,2,3,1,2,3,2,3,2,2,3,3,3,2,3,3,3,4};
void solve()
{int n; cin >> n;  if(n < 30) cout << dp[n] << endl; else cout << n / 15 - 1 + dp[n % 15 + 15] << endl;
} 
int main()
{int T; cin >> T;while(T--)solve();return 0;
}
// dp數組計算方式,完全背包問題
#include <bits/stdc++.h>
using namespace std;
const int N = 110;
int v[5] = {1, 3, 6, 10, 15};
int dp[N]; 
void solve()
{int n; cin >> n;  if(n < 30) cout << dp[n] << endl; else cout << n / 15 - 1 + dp[n % 15 + 15] << endl;
} 
int main()
{memset(dp, 0x3f, sizeof dp); dp[0] = 0;for(int i = 0; i < 5; i++)for(int j = v[i]; j < N; j++)dp[j] = min(dp[j], dp[j-v[i]] + 1);int T; cin >> T;while(T--)solve();return 0;
}

logo

//へ     /|
//  /\7    ∠_/
//  / │   / /
// │ Z _,< /   /`ヽ
// │     ヽ   /  〉
//  Y     `  /  /
// イ● 、 ●  ??〈  /
// ()  へ    | \〈
//  >ー 、_  ィ  │ //
//  / へ   / ノ<| \\
//  ヽ_ノ  (_/  │//
//	  7       |/
//
/*__   _,--="=--,_   __/  \."    .-.    "./  \/  ,/  _   : :   _  \/` \\  `| /o\  :_:  /o\ |\__/`-'| :="~` _ `~"=: |\`     (_)     `/.-"-.   \      |      /   .-"-.
.---{     }--|  /,.-'-.,\  |--{     }---.)  (_)_)_)  \_/`~-===-~`\_/  (_(_(_)  (
(                         				))                                     (
'---------------------------------------'
*/

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/714795.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/714795.shtml
英文地址,請注明出處:http://en.pswp.cn/news/714795.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

【力扣hot100】刷題筆記Day19

前言 回溯回溯回溯&#xff01;早上整理檔案竟然用了桶排序&#xff0c;不愧是算法狂魔們 79. 單詞搜索 - 力扣&#xff08;LeetCode&#xff09; DFS class Solution:def exist(self, board: List[List[str]], word: str) -> bool:m, n len(board), len(board[0])# used…

mysql timestamp轉換為datetime

MySQL timestamp轉換為datetime的方法 1. 流程概述 在MySQL中&#xff0c;timestamp和datetime是兩種不同的數據類型。timestamp存儲了日期和時間&#xff0c;并且會自動更新&#xff0c;可以用于記錄數據的創建和修改時間。datetime則是一個固定的日期和時間&#xff0c;不會自…

談談高并發系統的設計方法論

談談高并發系統的設計方法論 何為高并發系統&#xff1f;什么是并發&#xff08;Conurrent&#xff09;&#xff1f;什么是高并發&#xff08;Hight Concurrnet&#xff09;&#xff1f;高并發的衡量指標有哪些&#xff1f; 實現高并發系統的兩大板塊高并發系統應用程序側的設計…

騰訊云學生服務器使用教程_申請騰訊云學生機詳細流程

2024年騰訊云學生服務器優惠活動「云校園」&#xff0c;學生服務器優惠價格&#xff1a;輕量應用服務器2核2G學生價30元3個月、58元6個月、112元一年&#xff0c;輕量應用服務器4核8G配置191.1元3個月、352.8元6個月、646.8元一年&#xff0c;CVM云服務器2核4G配置842.4元一年&…

還在用Jenkins?快來試試這款簡而輕的自動部署軟件!

最近發現了一個比 Jenkins 使用更簡單的項目構建和部署工具&#xff0c;完全可以滿足個人以及一些小企業的需求&#xff0c;分享一下。 Jpom 是一款 Java 開發的簡單輕量的低侵入式在線構建、自動部署、日常運維、項目監控軟件。 日常開發中&#xff0c;Jpom 可以解決下面這些…

Nginx的多線程支持探究

文章中心思想: Nginx本身并不直接支持多線程處理模型。它采用的是基于事件驅動的單線程或多進程架構,而非多線程模型。然而,通過Nginx的模塊和第三方擴展,可以實現類似多線程的并發處理效果。 詳細說明: Nginx,作為一款高性能的Web服務器和反向代理服務器,其架構和并發…

章節二、three.js開發入門與調試設置02;

一、軌道控制器查看物體&#xff1b; 1、基本概念 軌道控制器&#xff08;OrbitControls&#xff09;可以使得相機圍繞目標進行軌道運動&#xff1b; 2、代碼樣例 // 七、創建軌道控制器&#xff08;相機圍繞著物體捕捉視角&#xff09; const controls new OrbitControls(c…

吳恩達機器學習全課程筆記第五篇

目錄 前言 P80-P85 添加數據 遷移學習 機器學習項目的完整周期 公平、偏見與倫理 P86-P95 傾斜數據集的誤差指標 決策樹模型 測量純度 選擇拆分方式增益 使用分類特征的一種獨熱編碼 連續的有價值特征 回歸樹 前言 這是吳恩達機器學習筆記的第五篇&#xff0c…

《2023跨境電商投訴大數據報告》發布|亞馬遜 天貓國際 考拉海購 敦煌網 阿里巴巴

2023年&#xff0c;跨境電商API接口天貓國際、京東國際和抖音全球購以其強大的品牌影響力和市場占有率&#xff0c;穩坐行業前三的位置。同時&#xff0c;各大跨境電商平臺消費糾紛問題層出不窮。依據國內知名網絡消費糾紛調解平臺“電訴寶”&#xff08;315.100EC.CN&#xff…

javaEE--后端環境變量配置

目錄 pre 文件準備 最終運行成功結果 后端運行步驟 1.修改setenv文件 2.運行setenv&#xff0c;設置環境變量 3.查看jdk版本 4.修改mysql文件夾下的my文件 前端運行步驟 1.nodejs環境配置 2.查看node和npm版本 3.下載并運行npm 4.注冊登錄 pre 文件準備 最終運行…

VR轉接器:破解虛擬與現實邊界的革命性設備

VR轉接器&#xff0c;這一革命性的設備&#xff0c;為虛擬現實體驗帶來了前所未有的自由度。它巧妙地連接了虛擬與現實&#xff0c;使得用戶在享受VR眼鏡帶來的奇幻世界的同時&#xff0c;也能自由地在現實世界中活動。這一設計的誕生&#xff0c;不僅解決了VR眼鏡續航的瓶頸問…

2、云原生安全之可視化界面rancher的部署

文章目錄 1、rancher的部署1.1、安裝rancher1.2、配置k8s2、部署helm3、容器安全工具neuvector此時已經部署好了k8s,使用rancher來管理 rancher簡化了使用k8s的流程,可以圖形化管理k8s。 參考: https://blog.51cto.com/u_15343792/5000311https://docs.rancher.cn/docs/ra…

你們團隊是否有RocketMQ創建Topic、GID創建規范呢

這里是weihubeats,覺得文章不錯可以關注公眾號小奏技術 背景 早期在使用RocketMQ的時候&#xff0c;系統和開發人員不算多。所以topic的創建會非常隨意&#xff0c;各種千奇百怪的topic 比如: order_topic、ORDER_TOPIC、order-topic 各種奇奇怪怪的風格&#xff0c;用_的&a…

GO結構體

1. 結構體 Go語言可以通過自定義的方式形成新的類型&#xff0c;結構體就是這些類型中的一種復合類型&#xff0c;結構體是由零個或多個任意類型的值聚合成的實體&#xff0c;每個值都可以稱為結構體的成員。 結構體成員也可以稱為“字段”&#xff0c;這些字段有以下特性&am…

JS清空數組方法

清空數組的方法有多種&#xff0c;以下是幾種常見的方式&#xff1a; 1.使用 array.length 屬性將數組的長度設為0&#xff0c;這樣會移除數組中的所有元素&#xff1a; var arr [1, 3, 5]; arr.length 0; console.log(arr); // [] 2. 使用 array.splice() 方法&#xff0c;…

STM32 | 零基礎 STM32 第一天

零基礎 STM32 第一天 一、認知STM32 1、STM32概念 STM32:意法半導體基于ARM公司的Cortex-M內核開發的32位的高性能、低功耗單片機。 ST:意法半導體 M:基于ARM公司的Cortex-M內核的高性能、低功耗單片機 32&#xff1a;32位單片機 2、STM32開發的產品 STM32開發的產品&a…

【論文筆記】Improving Language Understanding by Generative Pre-Training

Improving Language Understanding by Generative Pre-Training 文章目錄 Improving Language Understanding by Generative Pre-TrainingAbstract1 Introduction2 Related WorkSemi-supervised learning for NLPUnsupervised pre-trainingAuxiliary training objectives 3 Fra…

Java 網絡面試題解析

1. Http 協議的狀態碼有哪些&#xff1f;含義是什么&#xff1f;【重點】 200&#xff1a;OK&#xff0c;客戶端請求成功。 301&#xff1a;Moved Permanently&#xff08;永久移除&#xff09;&#xff0c;請求的URL已移走。Response中應該包含一個Location URL&#xff0c;…

steam++加速問題:出現顯示443端口被 vmware-hostd(9860)占用的錯誤。

目錄 前言&#xff1a; 正文&#xff1a; 前言&#xff1a; 使用Steam對GitHub進行加速處理時&#xff0c;建議使用2.8.6版本。 下載地址如下&#xff1a;Release 2.8.6 BeyondDimension/SteamTools GitHub 下載時注意自己的系統位數 正文&#xff1a; 使用GitHub時會使…

NOC2023軟件創意編程(學而思賽道)python初中組初賽真題

軟件創意編程 一、參賽范圍 1.參賽組別:小學低年級組(1-3 年級)、小學高年級組(4-6 年級)、初中組。 2.參賽人數:1 人。 3.指導教師:1 人(可空缺)。 4.每人限參加 1 個賽項。 組別確定:以地方教育行政主管部門(教委、教育廳、教育局) 認定的選手所屬學段為準。 二、…