目录
小sun的假期【区间合并】
#include<bits/stdc++.h>
using namespace std;
int n,m;
vector< pair<int,int> >ve,ans;
int main(void)
{
cin>>n>>m;
while(m--)
{
int l,r; cin>>l>>r;
ve.push_back({l,r});
}
sort(ve.begin(),ve.end());
int l=ve[0].first,r=ve[0].second;
for(int i=1;i<ve.size();i++)
{
int j=i,flag=0,temp=0;
while(j<ve.size()&&ve[j].first<=r) flag=1,temp=max(temp,ve[j].second),j++;
if(flag) r=max(r,temp),i=j-1;
else
{
ans.push_back({l,r});
l=ve[i].first,r=ve[i].second;
}
}
ans.push_back({l,r});
int sum=0;
if(ans.size()) sum=max(sum,ans[0].first-1);
for(int i=1;i<ans.size();i++)
sum=max(sum,ans[i].first-ans[i-1].second-1);
sum=max(sum,n-ans[ans.size()-1].second);
cout<<sum;
return 0;
}
扫雷【模拟】
#include<bits/stdc++.h>
using namespace std;
const int N=1010;
int n,m;
string s[N];
int solve(int x,int y)
{
int cnt=0;
for(int i=x-1;i<=x+1;i++)
for(int j=y-1;j<=y+1;j++)
{
if(i==x&&y==j) continue;
if(i<0||i>=n||j<0||j>=m) continue;
if(s[i][j]=='*') cnt++;
}
return cnt;
}
int main(void)
{
cin>>n>>m;
for(int i=0;i<n;i++) cin>>s[i];
for(int i=0;i<n;i++)
{
for(int j=0;j<m;j++)
{
if(s[i][j]=='*') cout<<s[i][j];
else cout<<solve(i,j);
}
puts("");
}
return 0;
}
异或和
#include<bits/stdc++.h>
using namespace std;
int main(void)
{
int n,x,sum=0; cin>>n;
for(int i=0;i<n;i++) scanf("%d",&x),sum^=x;
cout<<sum;
return 0;
}
解密
#include<bits/stdc++.h>
using namespace std;
const int N=1e3+10;
int k1,k2;
string s;
int main(void)
{
cin>>k1>>k2>>s;
for(int i=0;i<s.size();i++)
{
int w=tolower(s[i])-'a';
for(int j=0;j<26;j++)
{
int sum=j*k1+k2;
if(sum%26==w)
{
if(s[i]>='a') cout<<char(j+'a');
else cout<<char('A'+j);
}
}
}
return 0;
}