9.10 阿里笔试第二题(当时没写出来,我是菜鸟)

import java.util.Scanner;

/**
 * @author wc
 * @create 2021/09/10   19:24
 * @desc 9-10 阿里第二题 当时是没有写出来的 答案如果不对 请轻喷
 */
public class Main2 {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
//        接着a b c d
        long a = sc.nextLong();
        long b = sc.nextLong();
        long c = sc.nextLong();
        long d = sc.nextLong();
        long n = sc.nextLong();
        while (n-- != 0) {
            int sum = 0;
            long i = sc.nextLong();
            long j = sc.nextLong();
            int m = 2;
//            System.out.println(i + " " + j);
            while (i > m || j > m) {
                m *= 2;
            }
            m /= 2;
//            奇数行与奇数列要多加1
            if(m!=1&&i%2==1&&j%2==1){
                sum+=a;
            }
            while (m!=0) {
                if (i <= m && j <= m) {
                    sum += a;

                } else if (i > m && j > m) {
                    i -= m;
                    j -= m;
                    sum += c;
                } else if (i <= m && j > m) {
                    j -= m;
                    sum += b;
                } else if (i > m && j <= m) {
                    i -= m;
                    sum += d;
                }
                while (i<=m&&j<=m) {
                    m /= 2;
                }
            }
//            System.out.println(i+" "+j);
            System.out.println(sum);
        }
    }
}

#阿里笔试##笔试题目##阿里巴巴#
全部评论

相关推荐

不愿透露姓名的神秘牛友
昨天 11:24
大家还是用ai改吧,我心疼得要死,就当花钱买教训吧,人家直接拿完钱就跑路了
程序员小白条:简历修改700....神奇,又不是帮你面试,咋的,简历修改从双非变92了还是没实习变成有大厂实习了
点赞 评论 收藏
分享
不愿透露姓名的神秘牛友
07-10 11:33
点赞 评论 收藏
分享
Lorn的意义:你这标个前端是想找全栈吗?而且项目确实没什么含金量,技术栈太少了,边沉淀边找吧 现在学院本想就业好一点四年至少得高三模式两年加油吧
点赞 评论 收藏
分享
面向对象的火龙果很爱...:去吃一顿炸鸡就走
点赞 评论 收藏
分享
评论
1
1
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务