🍑 OJ专栏
24
39
0
输出
6
3
👨🏫 参考题解
🍑 找规律 (模拟理论上是可行的,但是就是会被卡掉)
🍤 答案 一定是 0~9 –> %9 (很神奇)
🍑 AC(找规律)
import java.util.Scanner;
public class Main
{
public static void main(String[] args)
{
Scanner sc = new Scanner(System.in);
while (sc.hasNext())
{
// long n = sc.nextLong();
String s = sc.next();
if (s.equals("0"))
break;
long ans = 0;
for (int i = 0; i < s.length(); i++)
ans += s.charAt(i) - '0';
ans %= 9;
if (ans == 0)
System.out.println(9);
else
{
System.out.println(ans);
}
}
}
}
🍑 字符串输入 + 模拟(WA)
import java.util.Scanner;
public class Main
{
public static void main(String[] args)
{
Scanner sc = new Scanner(System.in);
while (sc.hasNext())
{
String s = sc.next();
if (s.equals("0"))
break;
long ans = 0;
while(s.length()>1)
{
ans = 0;
for (int i = 0; i < s.length(); i++)
ans += s.charAt(i) - '0';
s = String.valueOf(ans);
}
System.out.println(ans);
}
}
private static long get(long n)
{
// 取出n的每一位上的值相加
long res = 0;
while (n != 0)
{
res += n % 10;
n /= 10;
}
return res;
}
}