À¶Çű­Á·Ï°ÏµÍ³Ë㷨ѵÁ·Ï°Ìâ¼Ó´ð°¸½âÎöjava°æ±¾

ϵͳ×î¶àÄÜÀ¹½Ø¶àÉÙµ¼µ¯£¬Èç¹ûÒªÀ¹½ØËùÓе¼µ¯×îÉÙÒªÅ䱸¶àÉÙÌ×ÕâÖÖµ¼µ¯À¹½ØÏµÍ³¡£ ÊäÈë¸ñʽ

Ò»ÐУ¬Îªµ¼µ¯ÒÀ´Î·ÉÀ´µÄ¸ß¶È Êä³ö¸ñʽ

Á½ÐУ¬·Ö±ðÊÇ×î¶àÄÜÀ¹½ØµÄµ¼µ¯ÊýÓëÒªÀ¹½ØËùÓе¼µ¯×îÉÙÒªÅ䱸µÄϵͳÊý ÑùÀýÊäÈë

389 207 155 300 299 170 158 65 ÑùÀýÊä³ö 6 2

²Î¿¼´úÂ룺 import .*; import .*;

public class Main {

public static void main(String args[]) throws IOException{

BufferedReader bf=new BufferedReader(new InputStreamReader); String s=(); String[] ss=(\ int[] numa=new int[]; int[] numb=new int[]; int[] numc=new int[];

for(int i=0;i<;i++){

numa[i]=(ss[i]); numb[i]=1; numc[i]=1;

}

} int a1=; int a2=;

for(int i=0;i<;i++){ }

for(int i=0;i<;i++){ }

}

for(int j=0;j

a2=(a2, numc[i]);

if(numa[i]>numa[j]&&numc[i]

numc[i]=numc[j]+1;

for(int j=0;j

if(numa[i]

a1=(a1, numb[i]);

numb[i]=numb[j]+1;

±àºÅ£ºALGO-14 ÌâÄ¿£º»ØÎÄÊý

¹Ø¼ü×Ö£ºÄ£Ä⠸߾«¶È¼ÆËã ÀàÐÍ£ºvipÊÔÌâ ÎÊÌâÃèÊö£º

ÈôÒ»¸öÊý£¨Ê×λ²»ÎªÁ㣩´Ó×óÏòÓÒ¶ÁÓë´ÓÓÒÏò×ó¶Á¶¼Ò»Ñù£¬ÎÒÃǾͽ«Æä³ÆÖ®Îª»ØÎÄÊý¡£ ÀýÈ磺¸ø¶¨Ò»¸ö10½øÖÆÊý56£¬½«56¼Ó65£¨¼´°Ñ56´ÓÓÒÏò×ó¶Á£©£¬µÃµ½121ÊÇÒ»¸ö»ØÎÄÊý¡£

ÓÖÈ磺¶ÔÓÚ10½øÖÆÊý87£º

STEP1£º87+78 = 165 STEP2£º165+561 = 726 STEP3£º726+627 = 1353 STEP4£º1353+3531 = 4884

ÔÚÕâÀïµÄÒ»²½ÊÇÖ¸½øÐÐÁËÒ»´ÎN½øÖƵļӷ¨£¬ÉÏÀý×îÉÙÓÃÁË4²½µÃµ½»ØÎÄÊý4884¡£

дһ¸ö³ÌÐò£¬¸ø¶¨Ò»¸öN£¨2<=N<=10»òN=16£©½øÖÆÊýM£¨ÆäÖÐ16½øÖÆÊý×ÖΪ0-9ÓëA-F£©£¬Çó×îÉÙ¾­¹ý¼¸²½¿ÉÒԵõ½»ØÎÄÊý¡£

Èç¹ûÔÚ30²½ÒÔÄÚ£¨°üº¬30²½£©²»¿ÉÄܵõ½»ØÎÄÊý£¬ÔòÊä³ö¡°Impossible!¡± ÊäÈë¸ñʽ Á½ÐУ¬NÓëM Êä³ö¸ñʽ

Èç¹ûÄÜÔÚ30²½ÒÔÄڵõ½»ØÎÄÊý£¬Êä³ö¡°STEP=xx¡±£¨²»º¬ÒýºÅ£©£¬ÆäÖÐxxÊDz½Êý£»·ñÔòÊä³öÒ»ÐС±Impossible!¡±£¨²»º¬ÒýºÅ£© ÑùÀýÊäÈë 9 87 ÑùÀýÊä³ö STEP=6 ²Î¿¼´úÂ룺

import class Main {

long sum = a + b; String str = \

count++;

if (count > 30) { }

\ return;

private static void func(long a, long b) { }

if (a == b)

\

long a = (m, n);

long b = (new StringBuilder(m).reverse().toString(), n);

n = ()); String m = ();

BufferedReader br = new BufferedReader(new InputStreamReader); public static void main(String[] args) throws IOException { private static int n, count;

else

func(a, b);

}

while (sum >= n) {

long tmp = sum % n; sum /= n; if (tmp >= 10)

str = (char) (55 + tmp) + str;

else

str = tmp + str;

}

if (sum >= 10)

str = (char) (55 + sum) + str;

else

str = sum + str;

}

String reverse = new StringBuilder(str).reverse().toString(); if (!(reverse)) {

a = (str, n); b = (reverse, n); func(a, b);

} else { }

\ return;

±àºÅ£ºALGO-15 ÌâÄ¿£ºÂÃÐмҵÄÔ¤Ëã

ÁªÏµ¿Í·þ£º779662525#qq.com(#Ìæ»»Îª@) ËÕICP±¸20003344ºÅ-4