귀속 실현: x의 y차원
1093 단어 귀속
X y =(x*x) (y/2)
이를 실현하려면 이 법에 따라 귀속을 이용하여 x의 y차원을 실현하고 y가 홀수일 때 x를 곱하기 위해 다음과 같이 제시한다.
public class Power {
static int xNum;
public static void main(String[] args) throws IOException {
int x,y;
int count = 0;
x = insert();
y = insert();
xNum = x;
power(x,y,count);
}
private static void power(int x, int y, int count) {
System.out.println("x :"+x+" y :"+y);
if(y==1)
{
if(count>0){
for(int i=1;i<=count;i++){
x = x*xNum;
}
}
System.out.println(" :"+x);
}
if(y>1)
{
//y
if(y%2==0)
{ System.out.println(">>>>");
power(x*x,y/2,count);
}
//y
if(y%2==1)
{System.out.println("<<<<");
power(x*x,(y-1)/2,count+1);
}
}
}
private static int insert() throws IOException {
InputStreamReader in = new InputStreamReader(System.in);
BufferedReader buffer = new BufferedReader(in);
String s = buffer.readLine();
return Integer.parseInt(s);
}
}