首页 > 其他分享 >2024.08.10京东

2024.08.10京东

时间:2024-09-06 20:52:05浏览次数:7  
标签:10 diridx int res 2024.08 break 牛牛 num 京东

1. 牛牛喝醉

牛牛昨晚喝醉了,走路开始疯狂摇摆,方向也分不清了。假设他所在的地方是一个二维平面,开始它位于坐标为(0,0)的地方,
并且面朝北方即y轴正方向。W表示牛牛向前走,A表示牛牛把当前方向向左转90度,D表示牛牛把方向向右转90度,S表示牛牛呆在原地。
给出一个字符串表示牛牛的酒后行为方式,你能告诉他走完后它位于哪个坐标点吗?

简单模拟题
int main(int argc, char *argv[]) {
    int dir[4][2] = {{0,1},{1,0},{0,-1},{-1,0}};
    string beseq;
    cin>>beseq;
    int x = 0; int y = 0;
    int diridx = 0;
    for(auto c:beseq){
        switch (c){
            case 'W':
                x = x + dir[diridx][0];
                y = y + dir[diridx][1];
                break;
            case 'A': //左转
                diridx = (diridx+3)%4;
                break;
            case 'D'://右转
                diridx = (diridx+1)%4;
                break;
            default:
                break;
        }
    }
    cout<<x<<" "<<y;
    return 0;
}

2. 对的个数

给定长度为N的序列a和非负整数X。找出满足ai+aj=X的(i,j)对的数量。

哈希计数
int main(int argc, char *argv[]) {
    int N; int X;
    cin>>N>>X;
    int res = 0;
    unordered_map<int,int> m;
    for(int i=0;i<N;i++){
        int num;
        cin>>num;
        if(num==X-num) res++;
        if(m.count(X-num))
            res = res + m[X-num]*2;
        m[num]++;
    }
    cout<<res;
    return 0;
}

3. 牛牛操作数组

牛牛有一个长度为n且值都为0的数组a。对于这个数组件牛每次操作可以选择一个区间[l,r],
对于[l,r]上的每一个数牛牛必须让其加一或者乘二(元素之间操作独立,可以选择一些元素乘二,一些元素加一,但是区间内每个元素都要操作)。
牛牛还有一个目标数组b,牛牛想知道对于初始数组a来说,其最少操作多少次可以将其变为b呢。

找到规律,使得0变为目标二进制数的操作次数最少是,其位数+1的个数-1

int main(int argc, char *argv[]) {
    int t;
    cin>>t;
    while(t--){
        int n;
        cin>>n;
        int res = 0;
        int num;
        for(int i=0;i<n;i++){
            int times = 0;
            cin>>num;
            while(num){
                times += num%2;
                num/=2;
                times ++;
            }
            res = max(res,times-1);
        }
        cout<<res<<endl;;
    }
    return 0;
}

标签:10,diridx,int,res,2024.08,break,牛牛,num,京东
From: https://www.cnblogs.com/929code/p/18400982

相关文章

  • AS-V1000视频监控平台web客户端播放实时视频和视频录像时,有个别画面出现卡顿和花屏问
    目录一、问题背景二、解决过程  1、检查平台进程  2、检查服务器CPU内存的使用情况  ①top/htop命令  ②vmstat命令  ③free命令  ④sar命令  3、检查网络带宽情况  三、最终效果一、问题背景  客户在公网测试服务器中的视......
  • 数据结构与算法 第10天(图的应用)
    一、最小生成树生成树:所有顶点均由边连接在一起,但不存在回路一个图可以有多颗不同的生成树 生成树特点:生成树的顶点个数与图的顶点个数相同;生成树是图的极小连通子图,去掉一条边则非连通,一个有n个顶点的连通图的生成树有n-1条边;在生成树中再加一条边必然形成回路,......
  • 使用centos7搭建RAID磁盘阵列,RAID0,RAID1,RAID5,ARID10,讲述RAID0、1、5、10的原理。
    1.RAID概念磁盘阵列(RedundantArraysofIndependentDisks,RAID),有“独立磁盘构成的具有冗余能力的阵列”之意。磁盘阵列是由很多价格较便宜的磁盘,以硬件(RAID卡)或软件(MDADM)形式组合成一个容量巨大的磁盘组,利用多个磁盘组合在一起,提升整个磁盘系统效能。利用这项技术,将数据切割......
  • 京东云金秋上云轻量云服务器!
    轻量云主机是面向中小企业、开发者打造的预装精选软件、开箱即用的主机产品,快速搭建网站、电商、企业低代码工具箱,云盘、共享文档、知识库、开发测试环境等,相对普通云主机,按套餐购买更优惠、控制台可视化管理,运维更简单,提供更便捷上云体验。轻量云主机这个专区是本次活动的主......
  • 青少年编程与数学 01-010 青少年成长管理 第五章 资源 2_2 成长资源
    青少年编程与数学01-010青少年成长管理第五章资源2_2成长资源第二节成长资源一、什么是成长资源二、成长资源的分类三、教育资源四、媒体资源五、情感资源六、物质资源分类七、社交资源八、文化资源九、环境资源十、健康资源十一、机会资源十二、资源的利用(一)儿童......
  • Windows10添加鼠标右键打开
    1打开注册表2.进入目录计算机\HKEY_CLASSES_ROOT\Directory\Background\shell\,新建项,2.1继续新建子项,重命名为command2.2修改子项中的默认,添加路径结果:ps:可以重命名。在第一个新建项中新建“字符串值”,重命名为“ICON”可以设置图标。效果图:......
  • electron 客户端 windows linux(麒麟V10)多系统离线打包 最新版 <一>
    electron客户端下载、构建、打包在国内网络情况下,绝对不是什么易事。更不要说离线干活,更是难上加难。这一篇主要讲下windows离线环境下,如何完成electron的下载打包。咱废话不多说,直接上干货。注意,我的大前提是完全没有网络。第一,需要下载什么windows环境下需要下载electron......
  • ThreeJS 综合教程100+【目录】
    ThreeJS综合教程100+旨在为开发者提供两大方面的知识信息:(1)提供详细的每个api知识点的详解(2)提供实战的示例,提供源代码。在这量大系统性的知识下,给用户提供清晰的思路和示例参考,更好的服务于自己的threeJS开发项目。文章正在建设中,下面的是cesium的示例教程(暂时撑门面),随......
  • PAT乙级 1030 完美数列 测试点3.4
    一、题目二、代码#include<iostream>#include<vector>#include<algorithm>usingnamespacestd;boolcmp(longlonga,longlongb){ returna<b;}intmain(){ longlongn,p; cin>>n>>p; longlongnum=0,temp=0; ve......
  • 文心一言 VS 讯飞星火 VS chatgpt (341)-- 算法导论23.1 10题
    十、给定图GGG和GGG的一棵最小生成树......