度小满第一题,请大佬帮我看下哪儿有错

第一题:提示Runtime Error
题目是:
如果一个数n,能整除自身包含的每个数,则输出“G”,有能被整除的,输出“H”,没有能被整除的,输出“S"。
n<=10^12
例如:72  能整除 2 ,---->H
12能整除1,2 ,---->G
37不能整除 3,7 --->S

package com.my.test;

import java.util.Scanner;

public class DXM001 {  public static void main(String[] args){
        Scanner sc = new Scanner(System.in);
        int T=sc.nextInt();
        sc.nextLine();
        String[] s=new String[T];
        for(int i=0;i<T;i++) {  long k=sc.nextLong();  sc.nextLine();  s[i]=get(k);
        }
        for(int i=0;i<T;i++) {  System.out.println(s[i]);
        }
        sc.close();  }  private static String get(long k) {  String str=k+"";  int t=0;  for(int i=0;i<str.length();i++) {  int l=str.charAt(i)-'0';  if(l==0) {  continue;  }  if(k%l==0) {  t++;  }  }  String s=null;  if(t==0) {  s="S";  }else if(t==str.length()) {  s="G";  }else {  s="H";  }  //String s=(t==0)?"S":t==str.length()?"G":"H";  return s;  }
}
	
运行提示RuntimeError


#度小满##笔试题目#
全部评论
只有通过了55% ,求解 #include<iostream> #include<string> #include<vector> #include<stdio.h> #include<string.h> #include<map> #include<algorithm> #include<queue> #include<fstream> using namespace std; int n; string num; int nums[20]; int vis[11]; int BigNumMod(int BigNum[], int c, int length) { int ans = 0; for (int i = 0; i < length; i++) ans = ((ans * 10) + BigNum[i]) % c; return ans; } int main() { scanf("%d", &n); int len, cnt, c; while (n--) { cin >> num; cnt = 0; len = num.length(); memset(vis, -1, sizeof(vis)); vis[0] = 1; for (int i = 0; i < len; i++)nums[i] = num[i] - '0'; for (int i = 0; i < len; i++) { c = num[i] - '0'; if (vis[c] == 1)cnt++; else if (vis[c] == -1 && BigNumMod(nums, c, len) == 0) { vis[c] = 1; cnt++; } else { vis[c] = 0; } } printf("%s", len == cnt ? "G" : cnt == 0 ? "S" : "H"); if (n != 0)printf("\n"); } return 0; }
点赞 回复 分享
发布于 2019-04-28 22:19
import java.util.ArrayList; import java.util.List; import java.util.Scanner; public class NumberMood {     public static void main(String[] args) {         // TODO Auto-generated method stub       Scanner  sc = new Scanner(System.in);       int n =  sc.nextInt();       int []arr = new int[n];       for(int i=0;i<n;i++)       {           arr[i] = sc.nextInt();       }       for(int i=0;i<n;i++)       {           System.out.println(ReturnMood(arr[i]));       }     }     public static String ReturnMood(int n)     {                  String str = String.valueOf(n);         int all =0;         int not = 0;         for(int i =0 ;i<str.length();i++)         {             int a = Integer.parseInt(str.substring(i,i+1));             if(n%a==0)             {                 all++;             }             if(n%a!=0)             {                 not++;             }                      }         if(all==str.length())         {             return "G";         }          if(not==str.length())         {             return "S";         }         return "H";     } } 大家帮忙看下我这个思路对不呀
点赞 回复 分享
发布于 2019-04-28 22:15
过了多少
点赞 回复 分享
发布于 2019-04-28 22:14
package com.my.test; import java.util.Scanner; public class DXM001 {     public static void main(String[] args){         Scanner sc = new Scanner(System.in);         int T=sc.nextInt();         sc.nextLine();         String[] s=new String[T];         for(int i=0;i<T;i++) {             long k=sc.nextLong();             sc.nextLine();             s[i]=get(k);         }         for(int i=0;i<T;i++) {             System.out.println(s[i]);         }         sc.close();     }     private static String get(long k) {         String str=k+"";         int t=0;         for(int i=0;i<str.length();i++) {             int l=str.charAt(i)-'0';             if(l==0) {                 continue;             }             if(k%l==0) {                 t++;             }         }         String s=null;         if(t==0) {             s="S";         }else if(t==str.length()) {             s="G";         }else {             s="H";         }         //String s=(t==0)?"S":t==str.length()?"G":"H";         return s;     } }
点赞 回复 分享
发布于 2019-04-28 22:09

相关推荐

刚刷到字节跳动官方发的消息,确实被这波阵仗吓了一跳。在大家还在纠结今年行情是不是又“寒冬”的时候,字节直接甩出了史上规模最大的转正实习计划——ByteIntern。咱们直接看几个最硬的数,别被花里胡哨的宣传词绕晕了。首先是“量大”。全球招7000多人是什么概念?这几乎是把很多中型互联网公司的总人数都给招进来了。最关键的是,这次的资源分配非常精准:研发岗给了4800多个Offer,占比直接超过六成。说白了,字节今年还是要死磕技术,尤其是产品和AI领域,这对于咱们写代码的同学来说,绝对是今年最厚的一块肥肉。其次是大家最关心的“转正率”。官方直接白纸黑字写了:整体转正率超过50%。这意味着只要你进去了,不划水、正常干,每两个人里就有一个能直接拿校招Offer。对于2027届(2026年9月到2027年8月毕业)的同学来说,这不仅是实习,这简直就是通往大厂的快捷通道。不过,我也得泼盆冷水。坑位多,不代表门槛低。字节的实习面试出了名的爱考算法和工程实操,尤其是今年重点倾斜AI方向,如果你简历里有和AI相关的项目,优势还是有的。而且,转正率50%也意味着剩下那50%的人是陪跑的,进去之后的考核压力肯定不小。一句话总结:&nbsp;27届的兄弟们,别犹豫了。今年字节这是铁了心要抢提前批的人才,现在投递就是占坑。与其等到明年秋招去千军万马挤独木桥,不如现在进去先占个工位,把转正名额攥在手里。
喵_coding:别逗了 50%转正率 仔细想想 就是转正与不转正
字节7000实习来了,你...
点赞 评论 收藏
分享
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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