11场蓝桥杯双周赛题解

11场蓝桥杯双周赛题解

码农世界 2024-05-19 后端 58 次浏览 0个评论

1.国际博物馆日【算法赛】 - 蓝桥云课 (lanqiao.cn)

#include 
using namespace std;
int main()
{
 cout<<"museum"< 

2.最小值取余【算法赛】 - 蓝桥云课 (lanqiao.cn)

贪心排个序就行了

void solve()
{
   cin>>n;
   for(int i=1;i<=n;i++)
     cin>>a[i];
    sort(a+1,a+1+n);
    int x=0;
    for(int i=1;i<=n;i++)
    {
      x=(x*10+a[i])%p;
    }
    cout< 

3.小蓝方程【算法赛】 - 蓝桥云课 (lanqiao.cn)

简单的分类讨论

只要看这个 a = a ∗ n a=a*n a=a∗n

当 n = 1 n=1 n=1时候 a a a可以为任意数

当 a = 0 a=0 a=0的时候 n n n可以是任意数

还有一个 0 , 0 0,0 0,0是特殊情况

所以答案就是 X + Y + 1 X+Y+1 X+Y+1

void solve()
{
  cin>>x>>y;
  cout<<(x+y)+1< 

4.玩偶购买【算法赛】 - 蓝桥云课 (lanqiao.cn)

分类讨论不会

5.数学魔术家【算法赛】 - 蓝桥云课 (lanqiao.cn)

贪心:最大的就直接从大到小排个序输出,最小就从小到大输出,如果有前导 0 0 0就把 0 0 0放在第一个非 0 0 0数的后面即可

void solve()
{
   string s;
   cin>>s;
   sort(s.begin(),s.end());
   reverse(s.begin(),s.end());
   cout< 

6.矿石样本分析【算法赛】 - 蓝桥云课 (lanqiao.cn)

这题类似与leetcode的第一题两数之和,只要存下每个 a i a_i ai​的下标 i i i,然后就判断枚举两个机器的出发点即可

void solve()
{
  cin>>n>>k;
  for(int i=1;i<=n;i++)
    cin>>a[i];
  map>mp;
  mp.clear();
  for(int i=1;i<=n;i++)
    mp[a[i]].push_back(i);
  int res=0x3f3f3f3f;
  for(int i=1;i<=n;i++)
  {
    if(mp[k-a[i]].size()==0)continue;
    if(k-a[i]==a[i])continue;
    for(auto x:mp[k-a[i]])
    {
       res=min(res,max(min(i,n-i+1),min(x,n-x+1)));
    }
  }
  if(res==0x3f3f3f3f)
  {
    cout<<-1< 

4.拔苗助长【算法赛】 - 蓝桥云课 (lanqiao.cn)

知识点:一个合数可以分解成若干个质因数。完全平方数的概念是 x 2 x^2 x2就是完全平方数

你可以让 h i h_i hi​变成 h i ∗ p h_i*p hi​∗p,其中 p p p是任意的质因数。所以我们把每个 h i h_i hi​分解成若干个质因数,如果某个质因数的个数是奇数就答案+1

int n,k;
int a[N]; 
mapmp;
void divide(int n)
{
    for(int i=2;i<=n/i;i++)
    {
        if(n%i==0)
        {
           int s=0;
            while(n%i==0)
            {
                s++;
                n=n/i;
            }
        mp[i]=s;
        }
    }
    if(n>1)mp[n]++;
}
void solve()
{
  cin>>n;
  int res=0;
  for(int i=1;i<=n;i++)
  {
    cin>>a[i];
    mp.clear();
    divide(a[i]);
    for(auto x:mp)
      if(x.second%2==1)res++;
  }
  cout<
                
                
                

转载请注明来自码农世界,本文标题:《11场蓝桥杯双周赛题解》

百度分享代码,如果开启HTTPS请参考李洋个人博客
每一天,每一秒,你所做的决定都会改变你的人生!

发表评论

快捷回复:

评论列表 (暂无评论,58人围观)参与讨论

还没有评论,来说两句吧...

Top