블루 브리지 컵 시험: 법칙을 찾아 천평 무게를 달다
1239 단어 lanqiaobei
천평으로 무게를 달 때, 우리는 가능한 한 적은 분동을 조합해서 가능한 한 많은 무게를 달기를 바란다.만약 5개의 분동만 있다면, 무게는 각각 1, 3, 9, 27, 81이다
그것들은 조합해서 1에서 121 사이의 임의의 정수 무게를 측정할 수 있다.
본 문제는 프로그래밍 실현을 요구한다. 사용자가 정한 무게에 대해 분동 조합 방안을 제시한다.
예를 들면 다음과 같습니다.
사용자 입력:
5
프로그램 출력:
9-3-1
사용자 입력:
19
프로그램 출력:
27-9+1
분석하다.
법칙을 찾아 이 숫자의 문자열의 첫 번째 숫자를 찾은 후 편이량을 계산하여 양과 음을 판단한다
예컨대
1=1
2 = 3 - 1
11 = 9 + 2 = 9+3-1
첫 번째 숫자는 (3^n)/2에서 (3^(n+1))/2로 규칙을 찾으면 폭력적으로 코드를 해독할 수 있습니다.
public class _4_ _01 1 {
public static String changefu(String str) //
{
StringBuffer temp = new StringBuffer("-");
for(int i=0;i=Math.pow(3,i)/2&&Integer.parseInt(n)0)
temp=temp+"+"+F(te+""); //
return temp;
}
}
public static void main(String[] args) {
for(int n=1;n<100;n++)
System.out.println(n+" "+F(n+""));
}
}