[考试反思]1113csp-s模拟测试113:一念

在这么考下去可以去混女队了2333

两天总分rank14,退役稳稳的

的确就是没状态。满脑子都是《包围保卫王国》ddp/LCT/ST,没好好考试。

我太菜了写题也写不出来考试也考不好(显然《保卫王国》40分钟是调不出来的)

也不知道为什么特别想A了它。。。莫名的执念

也许所谓的OI也就是一念之间的问题吧。

 

T1:ZYB修围墙

答案有可能是偶数。扩展一面墙的时候相对的墙不一定要扩展。

边长为a时,6次扩展的收益分别为a,a-1,a,a,a,a

1 #include<cstdio>
2 main(){
3     freopen("wall.in","r",stdin);freopen("wall.out","w",stdout);
4     int n,cnt=1,i=6;scanf("%d",&n);
5     for(;cnt<n;++i,cnt+=i/6-(i%6==1));
6     printf("%d\n",i);
7 }

 

T2:ZYB和售货机

每个物品多数情况下只会被以最低的买入价格买入。这样形成建边关系。

然后如果图里没有环那么收益就是最低价买入后卖出。(40pts)

否则,对于环上的所有点,其中有一个必须以次低价买入。

统计一下这样的亏损,取环上最小的亏损值从答案里减去即可。

 1 #include<cstdio>
 2 #include<iostream>
 3 using namespace std;
 4 #define S 100005
 5 int f[S],c[S],d[S],a[S],n,mn[S],ord[S],al[S],fir[S],l[S],to[S],ec;long long ans;
 6 int sta[S],top,sec[S];
 7 void link(int a,int b){l[++ec]=fir[a];fir[a]=ec;to[ec]=b;}
 8 void dfs(int p){
 9     al[p]=2;sta[++top]=p;
10     for(int i=fir[p];i;i=l[i])if(!al[to[i]])dfs(to[i]);
11         else if(to[i]==p)continue;
12         else if(al[to[i]]==2){
13             int mn=1<<30,j=0;sta[top+1]=to[i];
14             while(sta[j]!=to[i])j++;
15             for(;j<=top;++j)
16                 mn=min(mn,d[sta[j+1]]-c[sta[j]]-max(0,-sec[sta[j+1]]+d[sta[j+1]]));
17             ans-=mn;
18         }
19     al[p]=1;top--;
20 }
21 int main(){
22     freopen("goods.in","r",stdin);freopen("goods.out","w",stdout);
23     scanf("%d",&n);
24     for(int i=1;i<=n;++i)scanf("%d%d%d%d",&f[i],&c[i],&d[i],&a[i]),mn[i]=sec[i]=1000005;
25     for(int i=1;i<=n;++i)if(mn[f[i]]>c[i])mn[f[i]]=c[i],ord[f[i]]=i;
26     for(int i=1;i<=n;++i)if(mn[i]<d[i])ans+=1ll*a[i]*(d[i]-mn[i]),link(ord[i],i);
27     for(int i=1;i<=n;++i)if(sec[f[i]]>c[i]&&i!=ord[f[i]])sec[f[i]]=c[i];
28     for(int i=1;i<=n;++i)if(!al[i])top=0,dfs(i);
29     printf("%lld\n",ans);
30 }
View Code

相关文章:

  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
猜你喜欢
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
相关资源
相似解决方案