网易互娱笔试 第一题

这题不知道哪里想错了,0%  ????

import java.util.Scanner;

public class c1 {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int T = sc.nextInt();
        for(int t=0;t<T;t++){
            int m = sc.nextInt();
            int n = sc.nextInt();
            int value=n/m;
            int remain=n%m;
            int total_len=(value+remain)*m;

            int need=remain/2;
            if(remain%2!=0){
                need=(remain+m)/2;
                value=value-1;
            }
            int much=m-need;
            String[] single=new String[m];
            for(int i=0;i<m;i++){
                single[i]=sc.next();
            }

            for(int i=much;i<total_len-much;i++){
                StringBuffer sb=new StringBuffer();
                String s=single[i%m];
                sb.append(s.substring(much,m));
                for(int p=0;p<value;p++){
                    sb.append(s);
                }
                sb.append(s.substring(0,(total_len-much)%m));
                System.out.println(sb.toString());

            }
            System.out.println();

        }


    }
}



#网易互娱笔试#
全部评论
自测是对的,一运行就0%
点赞
送花
回复
分享
发布于 2022-08-27 22:07 江苏
我的纯暴力,墙纸宽m,墙宽n,m×times>n,times 是最小满足不等式的奇数,生成一个times*times的墙纸矩阵,比如times是3,就生成一个3*3的墙纸,然后输出最中间的部分。
1
送花
回复
分享
发布于 2022-08-27 22:59 北京
滴滴
校招火热招聘中
官网直投
我也是,不知道哪里想错了,有没有java的贴一下源码
点赞
送花
回复
分享
发布于 2022-08-27 22:20 江苏
同求有大佬解释下思路吗
点赞
送花
回复
分享
发布于 2022-08-27 22:26 福建
我测了一下,这个写法没满足好像是那个中心对称的要求吧,比如 1 3 12 1x1 xox 1x1
点赞
送花
回复
分享
发布于 2022-08-27 22:56 山东
思路是这样的,把墙壁扩展成壁纸的倍数,然后保证是奇数,然后就可以得到对称的贴图,最后把这个裁剪一下,就是答案了
点赞
送花
回复
分享
发布于 2022-08-28 01:02 上海
这题直接把窗花贴到中间,左右平移中心的窗花,再上下平移就能ac了
点赞
送花
回复
分享
发布于 2022-08-29 04:59 英国

相关推荐

4 收藏 评论
分享
牛客网
牛客企业服务