codeforces round 422 div2 补题 CF 822 A-F

I'm bored with life

水题

#include<bits/stdc++.h>
using namespace std;
typedef long long int LL;
const LL N=1,M=1,MOD=1;





int main()
{//freopen("t.txt","r",stdin);
 ios::sync_with_stdio(false);
 LL a,b;
 scanf("%I64d%I64d",&a,&b);
 LL c=min(a,b);
 LL ans=1;
 for(LL i=2;i<=c;i++) 
    ans=ans*i;
 printf("%I64d\n",ans);
 return 0;
}

  

Crossword solving

水题

#include<bits/stdc++.h>
using namespace std;
typedef long long int LL;
const LL N=1,M=1,MOD=1;





int main()
{//freopen("t.txt","r",stdin);
 ios::sync_with_stdio(false);
 int n,m;
 char a[2000],b[2000];
 scanf("%d%d",&n,&m);
 scanf("%s%s",&b,&a);
 vector<int>pos;
 pos.resize(n+1);
 for(int i=0;i+n-1<m;i++)
 {
   vector<int>pon;
 	for(int j=0;j<n;j++)
 		{
 		 if(a[i+j]!=b[j])pon.push_back(j+1);
		}
	if(pon.size()<pos.size())pos=pon;
 }
 printf("%d\n",pos.size());
 for(int i=0;i<pos.size();i++)
 	{
 	 printf("%d ",pos[i]);
	 }
 printf("\n");
 return 0;
}

  

Hacker, pack your bags!

比较裸的线段树,Mdzz 一开始没用LL WA了好几发 线段树写的还不是很熟练。。 最后调出来没时间看后边的题了!!

#include<bits/stdc++.h>
using namespace std;
typedef long long int LL;
const LL N=200005,M=15000000,MOD=1;
LL L[N],R[N],C[N];
int rt1[N],rt2[N],lc[M],rc[M],sumc[M],tot;
int n,x;
void update(int cur)
{
 sumc[cur]=2e9+10;
 if(lc[cur]!=0)sumc[cur]=min(sumc[cur],sumc[lc[cur]]);
 if(rc[cur]!=0)sumc[cur]=min(sumc[cur],sumc[rc[cur]]);
}
void insert(int cur,int val,int cost,int l,int r)
{
 if(l==r&&l==val){if(sumc[cur]==0)sumc[cur]=cost;else sumc[cur]=min(sumc[cur],cost);return ;}
 int mid=(l+r)/2;
 if(val<=mid)
 	{
 	 if(lc[cur]==0)lc[cur]=++tot;
 	 insert(lc[cur],val,cost,l,mid);
	}
	else
		{
		 if(rc[cur]==0)rc[cur]=++tot;
		 insert(rc[cur],val,cost,mid+1,r);
		}
 update(cur);
}
LL que1(int cur,int vl,int vr,int l,int r)
{
 if(cur==0||r<vl||l>vr)return 2e9+10;
 if(r<=vr&&l>=vl)return sumc[cur];
 int mid=(l+r)/2;
 LL ret=2e9+10;
 if(vl<=mid)ret=min(ret, que1(lc[cur],vl,min(mid,vr),l,mid));
 if(vr>mid) ret=min( ret,que1(rc[cur],max(vl,mid+1),vr,mid+1,r));
 return ret;
}
int main()
{//freopen("t.txt","r",stdin);
 ios::sync_with_stdio(false);
 scanf("%d%d",&n,&x);
 for(int i=1;i<=n;i++)
 {
  scanf("%I64d%I64d%I64d",&L[i],&R[i],&C[i]);
  int len=R[i]-L[i]+1;
  if(rt1[len]==0&&rt2[len]==0)rt1[len]=++tot,rt2[len]=++tot;
  insert(rt1[len],R[i],C[i],1,N);insert(rt2[len],L[i],C[i],1,N);	
 }
 LL ans=2e9+10;
 for(int i=1;i<=n;i++)
 	{
 	 int len=R[i]-L[i]+1;
 	 if(len>=x)continue;
 	 ans=min(ans,C[i]+min(que1(rt1[x-len],1,L[i]-1,1,N),que1(rt2[x-len],R[i]+1,N,1,N)));
	}
 if(ans==2e9+10)printf("-1\n");
 	else printf("%I64d\n",ans);
 return 0;
}

  

My pretty girl Noora

Liar

Madness

转载于:https://www.cnblogs.com/heisenberg-/p/7108739.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
抱歉,根据提供的引用内容,我无法理解你具体想要问什么问题。请提供更清晰明确的问题,我将竭诚为你解答。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [Codeforces Round 860 (Div. 2)题解](https://blog.csdn.net/qq_60653991/article/details/129802687)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT0_1"}}] [.reference_item style="max-width: 33.333333333333336%"] - *2* [【CodeforcesCodeforces Round 865 (Div. 2) (补赛)](https://blog.csdn.net/t_mod/article/details/130104033)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT0_1"}}] [.reference_item style="max-width: 33.333333333333336%"] - *3* [Codeforces Round 872 (Div. 2)(前三道](https://blog.csdn.net/qq_68286180/article/details/130570952)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT0_1"}}] [.reference_item style="max-width: 33.333333333333336%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值