码迷,mamicode.com
首页 > 其他好文 > 详细

CodeForces 1107F. Vasya and Endless Credits

时间:2019-01-31 20:54:03      阅读:320      评论:0      收藏:0      [点我收藏+]

标签:二分图   miss   最小费用最大流   blank   二分   lan   href   for   ref   

题目简述:给定 $n \leq 500$ 个贷款方式,其中第$i$个贷款额为$a_i$元,需要$k_i$个月偿还,每月还贷$b_i$元。在每个月月初可申请其中一个贷款,而在每个月月底时需要还贷。求:(在某一时刻)可获得的最多贷款。

 

观察1:获得最多贷款的时刻一定在$n$月以内。

观察2:倒数第$j$个月申请的第$i$个贷款,在获得最多贷款的时刻之前,需要还贷$b_i*\min\{k_i,j-1\}$元。

 

解1:(二分图最佳匹配,最小费用最大流)code

设$X$部有$n$个点,记为$X_i$,表示第$i$个贷款方式;$Y$部有$n$个点,记为$Y_j$。$X_i$和$Y_j$之间的连线表示倒数第$j$个月申请第$i$个贷款。

连边$(X_i, Y_j)$,权值为$\max\{a_i-b_i\min\{k_i,j-1\},0\}$。二分图最佳匹配即为答案。使用KM算法求二分图最佳匹配,时间复杂度为$O(n^3)$。

 

解2:

CodeForces 1107F. Vasya and Endless Credits

标签:二分图   miss   最小费用最大流   blank   二分   lan   href   for   ref   

原文地址:https://www.cnblogs.com/TinyWong/p/10343282.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!