8.25奇安信笔试 第二题正方形面积输入输出

题目原为“寻找最大的长方形面积”
有java做的兄弟吗,
那个输入一直出错,提示format input string ,字符串截取去掉数组最左右边的[]也没用。
兄弟们可以贴下输入代码吗?
感谢!
#秋招##奇安信23秋招题怎么回事,看不懂#
全部评论
用substring截取一下俩边的括号,再用split分割一下字符串就ok了
1 回复 分享
发布于 2022-08-25 21:21 陕西
import java.util.*; public class Q2 {     public static void main(String[] args) {         Scanner sc = new Scanner(System.in);         while (sc.hasNextLine()){             String line = sc.nextLine();             line = line.substring(1,line.length()-1);             String[] strs = line.split(",");             int[] nums = new int[strs.length];             for(int i=0;i<nums.length;i++) nums[i] = Integer.parseInt(strs[i]);             helper(nums);         }     }
1 回复 分享
发布于 2022-08-25 21:49 北京
        str = str.substring(1,len-1);         String[] arr = str.split(",");
1 回复 分享
发布于 2022-08-25 21:54 黑龙江
***了。。
点赞 回复 分享
发布于 2022-08-25 21:14 广东
public static void main(String[] args) {         Scanner sc = new Scanner(System.in);         String s = sc.next();         int len = s.length()/2;         int[] nums = new int[len];         for (int i = 0; i < len; i++) {             nums[i] = s.charAt(i*2+1)-'0&(30533)#39;;         }         System.out.println(fun(nums));     }     private static int fun(int[] nums){         int res = 0;         int left = 0;         int right = nums.length-1;         while (left < right){             res = Math.max(res,(right-left)*Math.min(nums[left],nums[right]));             if (nums[left] < nums[right]){                 ++left;             }else {                 --right;             }         }         return res;     }
点赞 回复 分享
发布于 2022-08-25 21:14 湖南
一个比较蠢但能用的思路
点赞 回复 分享
发布于 2022-08-25 21:18 上海
那个输入输出   他的考试系统里有样例,给所有输入输出都做一遍就好了
点赞 回复 分享
发布于 2022-08-25 21:32 陕西
用string builder的deletecharat,把头尾删除,再使用split
点赞 回复 分享
发布于 2022-08-25 23:46 湖南

相关推荐

11-05 07:29
贵州大学 Java
点赞 评论 收藏
分享
点赞 2 评论
分享
牛客网
牛客企业服务