{"id":284,"date":"2010-06-15T21:34:00","date_gmt":"2010-06-15T13:34:00","guid":{"rendered":"http:\/\/localhost\/?p=284"},"modified":"2010-06-15T21:34:00","modified_gmt":"2010-06-15T13:34:00","slug":"poi2006szk-schools","status":"publish","type":"post","link":"https:\/\/www.shuizilong.com\/wjmzbmr\/?p=284","title":{"rendered":"[POI2006]Szk-Schools"},"content":{"rendered":"\n<p>[POI2006]Szk-Schools <\/p>\n<p>Time Limit:5000MS  Memory Limit:65536K<br \/>Total Submit:34 Accepted:21 <br \/>Case Time Limit:1000MS<\/p>\n<p><strong>Description <\/strong><\/p>\n<p><img decoding=\"async\" src=\"http:\/\/61.187.179.132:8080\/JudgeOnline\/images\/1520_1.jpg\" \/> <\/p>\n<p><strong>Input <\/strong><\/p>\n<p><img decoding=\"async\" src=\"http:\/\/61.187.179.132:8080\/JudgeOnline\/images\/1520_2.jpg\" \/> <\/p>\n<p><strong>Output <\/strong><\/p>\n<p>\u5982\u679c\u6709\u53ef\u884c\u89e3, \u8f93\u51fa\u6700\u5c0f\u4ee3\u4ef7,\u5426\u5219\u8f93\u51faNIE. <\/p>\n<p><strong>Sample Input <br \/><\/strong><\/p>\n<\/p>\n<p><strong>Sample Output <\/strong><\/p>\n<\/p>\n<p><strong>Source <br \/>\u8d39\u7528\u6d41TLE\u3002\u3002\u53ea\u597d\u5b66\u4e86\u4e2aKM\u7b97\u6cd5\u6765\u5bf9\u4ed8\u8fd9\u9898\u56e7\u3002\u3002<br \/><\/strong><\/p>\n<p>#include &lt;vector&gt;#include &lt;algorithm&gt;#include &lt;utility&gt;#include &lt;iostream&gt;#include &lt;cstdio&gt;#include &lt;cmath&gt;#include &lt;cstdlib&gt;#include &lt;cstring&gt;#define rep(i,n) for(int i=0;i&lt;n;i++)#define pb push_back#define Debug(x) cout&lt;&lt;#x&lt;&lt;&quot;=&quot;&lt;&lt;x&lt;&lt;endl;#define For(i,l,r) for(int i=l;i&lt;=r;i++)const int inf=~0U&gt;&gt;2,maxn=200;using namespace std;typedef long long ll;typedef unsigned long long ull;int Lx[maxn],Ly[maxn],w[maxn][maxn],Link[maxn],Slack[maxn],n;bool VisX[maxn],VisY[maxn];bool Find(int x){    VisX[x]=true;    rep(y,n)if(!VisY[y])    {        int t=Lx[x]+Ly[y]-w[x][y];        if(!t)        {            VisY[y]=true;            if(Link[y]==-1||Find(Link[y]))                return Link[y]=x,true;        }        else Slack[y]=min(Slack[y],t);    }    return false;}void KM(){    memset(Link,-1,sizeof Link);    rep(i,n)Lx[i]=-inf;    memset(Ly,0,sizeof Ly);    rep(i,n)rep(j,n)Lx[i]=max(Lx[i],w[i][j]);    rep(x,n)    {        rep(y,n)Slack[y]=inf;        for(;;)        {            memset(VisX,0,sizeof VisX);            memset(VisY,0,sizeof VisY);            if(Find(x))break;            int d=inf;            rep(y,n)if(!VisY[y])d=min(d,Slack[y]);            rep(x,n)if(VisX[x])Lx[x]-=d;            rep(y,n)if(VisY[y])Ly[y]+=d;else Slack[y]-=d;        }    }}void InIt(){    cin&gt;&gt;n;int m,a,b,k;    rep(x,n)rep(y,n)w[x][y]=-inf;    rep(x,n)    {        scanf(&quot;%d%d%d%d&quot;,&amp;m,&amp;a,&amp;b,&amp;k);&#8211;a;&#8211;b;&#8211;m;        for(int y=a;y&lt;=b;y++)            w[x][y]=-abs(y-m)*k;    }}int main(){    \/\/freopen(&quot;in&quot;,&quot;r&quot;,stdin);    InIt();KM();int ans=0;    rep(i,n)    {        int tmp;        if((tmp=w[Link[i]][i])==-inf){cout&lt;&lt;&quot;NIE&quot;&lt;&lt;endl;return 0;}        ans-=tmp;    }    cout&lt;&lt;ans&lt;&lt;endl;}951 1 2 31 1 5 13 2 5 54 1 5 103 3 3 1 <\/p>\n","protected":false},"excerpt":{"rendered":"<p>[POI2006]Szk-Schools Time Limit:5000MS Memory Limit:65536KTotal Submit:34 Accepted:21 Case Time Limit:1000MS Description Input Output \u5982\u679c\u6709\u53ef\u884c\u89e3, \u8f93\u51fa\u6700\u5c0f\u4ee3\u4ef7,\u5426\u5219\u8f93\u51faNIE. Sample Input Sample Output Source \u8d39\u7528\u6d41TLE\u3002\u3002\u53ea\u597d\u5b66\u4e86\u4e2aKM\u7b97\u6cd5\u6765\u5bf9\u4ed8\u8fd9\u9898\u56e7\u3002\u3002 #include &lt;vector&gt;#include &lt;algorithm&gt;#include &lt;utility&gt;#include &lt;iostream&gt;#include &lt;cstdio&gt;#include &lt;cmath&gt;#include &lt;cstdlib&gt;#include &lt;cstring&gt;#define rep(i,n) for(int i=0;i&lt;n;i++)#define pb push_back#define Debug(x) cout&lt;&lt;#x&lt;&lt;&quot;=&quot;&lt;&lt;x&lt;&lt;endl;#define For(i,l,r) for(int i=l;i&lt;=r;i++)const int inf=~0U&gt;&gt;2,maxn=200;using namespace std;typedef long long ll;typedef unsigned long long ull;int Lx[maxn],Ly[maxn],w[maxn][maxn],Link[maxn],Slack[maxn],n;bool VisX[maxn],VisY[maxn];bool Find(int x){ [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":[],"categories":[10],"tags":[],"jetpack_featured_media_url":"","_links":{"self":[{"href":"https:\/\/www.shuizilong.com\/wjmzbmr\/index.php?rest_route=\/wp\/v2\/posts\/284"}],"collection":[{"href":"https:\/\/www.shuizilong.com\/wjmzbmr\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.shuizilong.com\/wjmzbmr\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.shuizilong.com\/wjmzbmr\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.shuizilong.com\/wjmzbmr\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=284"}],"version-history":[{"count":0,"href":"https:\/\/www.shuizilong.com\/wjmzbmr\/index.php?rest_route=\/wp\/v2\/posts\/284\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.shuizilong.com\/wjmzbmr\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=284"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.shuizilong.com\/wjmzbmr\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=284"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.shuizilong.com\/wjmzbmr\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=284"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}