寒假1

C:

分析:等待的时间越短,不满意度就越低,所以我们把办事所需时间低的排在前面,然后用前缀和可以计算不满意值,然后已知插队进来之后后面每个人都会加tc不满意值,假设后面有x人,就是x*tc,那么m/tc就是插队后面的人数,于是易知答案为t[n-x]+tc

代码:void solve() {

int n,q,tc;

cin>>n>>q>>tc;

int t[n];

for(int i=1;i<=n;i++)

cin>>t[i];

sort(t+1,t+1+n);

for(int i=1;i<=n;i++)

t[i]=t[i-1]+t[i];

while(q--){

int m;cin>>m;

int s=min(n,m/tc);

cout<<t[n-s]+tc<<'\n';

}

}

L:

分析:公式计算阴影面积即可

代码:

void solve() {

int c,d,h,w;

cin>>c>>d>>h>>w;

cout<<3*c*w<<endl;

}

E:

题目:

分析:暴力dfs枚举情况即可解决问题

代码:void dfs(int x)

{

if(x==m)

{

int t=1;

for(int i=2;i<=n;i++)

{

if(a[1]<a[i])

t++;

}

ans=min(t,ans);

return;

}

a[u[x]]+=3;

dfs(x+1);

a[u[x]]-=3;

a[v[x]]+=3;

dfs(x+1);

a[v[x]]-=3;

a[u[x]]++;

a[v[x]]++;

dfs(x+1);

a[u[x]]--;

a[v[x]]--;

}

void solve() {

cin>>n>>m;

for(int i=1;i<=n;i++)

cin>>a[i];

for(int i=0;i<m;i++)

{

cin>>u[i]>>v[i];

}

ans=n;

dfs(0);

cout<<ans<<endl;

}

全部评论

相关推荐

Java面试先知:我也是和你一样的情况,hr 说等开奖就行了
点赞 评论 收藏
分享
千千倩倩:简历问题有点多,加v细聊
点赞 评论 收藏
分享
评论
点赞
1
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务