2022年携程秋招第五批

cpp 复制代码
#include <iostream>
using namespace std;

int main() {
     int n,k;
     scanf("%d%d",&n,&k);
     string s;
     if(k*3>n)
     {
        int res=-1;
        printf("%d\n",res);
     }
     else
     {
        for(int i=1;i<=k;i++)
        {
            s.append("you");
        }
        for(int i=3*k;i<n;i++)
        {
            s.append("y");
        }
        cout<<s<<endl;
     }
     return 0;
}
// 64 位输出请用 printf("%lld")
cpp 复制代码
#include <iostream>
using namespace std;
long long n;
int main() {
    
    scanf("%lld",&n);
     long long w;
    if(n%3==0)
    {
       w=n/3-1;
       
         printf("%lld\n",w);
    }
    else
    {
       w=n/3;
       printf("%lld\n",w*2);
    }
    
    // for(int i=1;i<=w;i++)
    // {
    //     printf("%d %d\n",i*3,n-i*3);
    // }
    
    return 0;
    
}
// 64 位输出请用 printf("%lld")

题解:long long sum1=0;//记录实际的加和减
long long sum2=0;//记录实际的加,并且当执行减时要和0比较

最后遍历对max(arr[i]+sum1,sum2)求和;

cpp 复制代码
#include <iostream>
#include<stdio.h>
#include<cmath>
// #include <algorithm>
using namespace std;
int arr[100005]; 
int indexadd[100005];
int mod=1e9+7;
int main() {
    int n,k;
    scanf("%d%d",&n,&k);
    for(int i=0;i<n;i++)
    {
        scanf("%d",&arr[i]);
    }
    long long sum1=0;//记录实际的加和减
    long long sum2=0;//记录实际的加,并且当执行减时要和0比较
    while(k--){
        int op,x;
        scanf("%d%d",&op,&x);
        if(op==1)
        {
              sum1+=x;
              sum2+=x;
        }
        else{
            sum1-=x;
            sum2=max(sum2-x,(long long)0);
        }
    }
    long long res=0;
    for(int i=0;i<n;i++)
    {
          res+=max(arr[i]+sum1,sum2);
          res=res%mod;
    }
    printf("%lld\n",res);
    return 0;
}
// 64 位输出请用 printf("%lld")

首选求出a和b所有的质因子,以及每个质因子对应的个数,然后使用dfs进行搜素,找出所有可能的因子

cpp 复制代码
#include <iostream>
#include<map>
#include<vector>
#include<algorithm>
using namespace std;
map<long long,long long>mp1;
map<long long,long long>mp;
long long a1[20000];
vector<long long>res;
int Knum=0;
void dfs(int n,int step,long long value)
{
      if(step==n)
      {
           if(!mp1[value])
           {
              mp1[value]++;
              res.push_back(value);
              Knum++;
           }
            return;
      }
      int k=mp[a1[step]];
      for(int i=0;i<=k;i++)
      {
           if(i==0)
           {
                dfs(n,step+1,value);
           }
           else{
               value=value*a1[step];
               dfs(n,step+1,value);
           }
      }
      return ;
}
int main() {
    long long a,b;
    scanf("%lld%lld",&a,&b);
    for(long long i=2;i*i<=a;i++)
    {
        while(a%i==0&&a>1)
        {
            mp[i]++;
            a=a/i;
        }

    }
    if(a>1)
    {
        mp[a]++;
    }
    for(long long i=2;i*i<=b;i++)
    {
        while(b%i==0&&b>1)
        {
            mp[i]++;
            b=b/i;
        }
    }
    if(b>1)
    {
        mp[b]++;
    }
    int num=0;
    map<long long,long long>::iterator it=mp.begin();
    while(it!=mp.end())
    {
        long long x=it->first;
        a1[num++]=x;
        it++;
    }
    dfs(num,0,1);
    sort(res.begin(),res.end());
    printf("%d\n",Knum);
    for(int i=0;i<res.size();i++){
        if(i==0)
        printf("%lld",res[i]);
        else{
            printf(" %lld",res[i]);
        }
    }
    printf("\n");
    return 0;
}
// 64 位输出请用 printf("%lld")
sql 复制代码
select
    date(o.order_time) as order_date,
    o.user_id,
    count(o.user_id) as order_nums,
    u.vip
from order_tb o 
left join uservip_tb u 
on o.user_id = u.user_id
group by o.user_id, date(o.order_time)
having count(o.user_id) > 1
相关推荐
A懿轩A几秒前
C/C++ 数据结构与算法【树和二叉树】 树和二叉树,二叉树先中后序遍历详细解析【日常学习,考研必备】带图+详细代码
c语言·数据结构·c++·学习·二叉树·
-$_$-8 分钟前
【LeetCode 面试经典150题】详细题解之滑动窗口篇
算法·leetcode·面试
Channing Lewis12 分钟前
算法工程化工程师
算法
帅逼码农1 小时前
有限域、伽罗瓦域、扩域、素域、代数扩张、分裂域概念解释
算法·有限域·伽罗瓦域
Jayen H1 小时前
【优选算法】盛最多水的容器
算法
机跃1 小时前
递归算法常见问题(Java)
java·开发语言·算法
<但凡.2 小时前
题海拾贝:蓝桥杯 2020 省AB 乘法表
c++·算法·蓝桥杯
pzx_0012 小时前
【LeetCode】94.二叉树的中序遍历
算法·leetcode·职场和发展
DogDaoDao2 小时前
leetcode 面试经典 150 题:矩阵置零
数据结构·c++·leetcode·面试·矩阵·二维数组·矩阵置零
我曾经是个程序员2 小时前
使用C#生成一张1G大小的空白图片
java·算法·c#