A、猫猫与广告
只要让白布的最大的边大于广告纸最大边,白布最小边大于广告纸最小边即可
#include<bits/stdc++.h>
#define int long long
using namespace std;
const int N=110000;
signed main()
{
ios::sync_with_stdio(false);
int a,b,c,d;
cin>>a>>b>>c>>d;
if(max(c,d)>max(a,b))
{
if(min(c,d)>min(a,b))
cout<<"YES"<<endl;
}
else cout<<"NO"<<endl;
return 0;
}
B、猫猫与密信
直接扫描过去即可
#include<bits/stdc++.h>
#define int long long
using namespace std;
const int N=110000;
string s;
signed main()
{
ios::sync_with_stdio(false);
cin>>s;
map<string,int>mp;
mp["love"]=1;
mp["ove"]=1;
mp["lve"]=1;
mp["loe"]=1;
mp["lov"]=1;
s=s+'?'+'?'+'?'+'?';
for(int i=0;i<s.size()-3;i++)
{
string t=s.substr(i,3);
if(mp[t])
{
cout<<"YES"<<endl;
return 0;
}
}
for(int i=0;i<s.size()-4;i++)
{
if(mp[s.substr(i,4)])
{
cout<<"YES"<<endl;
return 0;
}
}
cout<<"NO"<<endl;
return 0;
}
C.猫猫与数列
类似于斐波那契数列,可以根据数据范围和给的样例,当a1=2,a2=2的时候是项数最多的时候
这时候答案是5,意思是说最多5项,类似于斐波那契数列递推过去即可
f[i]=pow(f[i-2],f[i-1)即可
#include<bits/stdc++.h>
#define int long long
using namespace std;
const int N=1100;
int f[N];
signed main()
{
cin>>f[1]>>f[2];
for(int i=3;i<=6;i++)
f[i]=pow(f[i-2],f[i-1]);
for(int i=5;i;i--)
{
if(f[i]<=1e18&&f[i]>=min(f[1],f[2]))
{
cout<<i<<endl;
return 0;
}
}
return 0;
}
D、猫猫与主人
双指针,按照猫猫的友善值和主人的期望来从小到大排序,同时维护一个指针j,表示猫猫能接受主人的最小友善值,从这k