URAL1104[Don’t Ask Woman about Her Age]

数学题,需要知道(a*k^n)mod(k-1)=a,即sum{a[i]*k^i}mod(k-1)=sum{a[i]}。
其实不知道也可以做。
继续练习Java。

CODE:

/*
PROGRAM: $PROGRAM
AUTHOR: Su Jiao
DATE: 2011-11-18
DESCRIPTION:
$DESCRIPTION
*/


import
java.io.*;
import
java.util.*;

public class
Ural {
public static
void main(String args[])
{

new
Ural();
}

public
int c2i(char c)
{

if
('A'<=c&&c<='Z') return (int)(c-'A')+10;
else return
(int)(c-'0');
}

public
Ural()
{

Scanner
cin=new Scanner(new BufferedInputStream(System.in));
String
s=cin.nextLine();
int
sum=0;
int
mink=2;
for
(int i=0;i<s.length();i++)
{

sum+=c2i(s.charAt(i));
if
(c2i(s.charAt(i))>=mink) mink=c2i(s.charAt(i))+1;
}

for
(int k=mink;k<=36;k++)
{

if
(sum%(k-1)==0)
{

System
.out.println(k);
return
;
}
}

System
.out.println("No solution.");
}
}

留下评论

您的邮箱地址不会被公开。 必填项已用 * 标注