1. 神秘代码
      1. 向上取整 int index = (tmpLen + 1) / 2;
      2. 想要删除String中的指定位置的字符不方便,可以将String转化成List的结构,再使用remove
      3. 同理,向指定位置插入字符 也可以使用add

    493cc9f98378c3af4e857f3aca842fc.jpg1517f7f271ca464989b48c6ed040d40.jpg2577f9f8c97a46e2fc8cc8d87297417.jpg

    1. import java.util.ArrayList;
    2. import java.util.List;
    3. import java.util.Scanner;
    4. public class Solution2 {
    5. public static void main(String[] args) {
    6. Scanner sc = new Scanner(System.in);
    7. int strLen = sc.nextInt();
    8. int operation = sc.nextInt();
    9. sc.nextLine();
    10. String str = sc.nextLine();
    11. System.out.println(operateStr(str, operation));
    12. }
    13. private static String operateStr(String str, int operation) {
    14. if (operation == 1) {
    15. return encodeStr(str);
    16. } else {
    17. return decodeStr(str);
    18. }
    19. }
    20. private static String decodeStr(String str) {
    21. List<Character> output = new ArrayList<>();
    22. char[] ch = str.toCharArray();
    23. int strLen = str.length();
    24. for (int i = strLen - 1; i > -1; i--) {
    25. int index = (output.size() + 1 + 1) / 2 - 1;
    26. output.add(index, ch[i]);
    27. }
    28. StringBuilder sb = new StringBuilder();
    29. for (char tmpChar : output) {
    30. sb.append(tmpChar);
    31. }
    32. return sb.toString();
    33. }
    34. private static String encodeStr(String str) {
    35. int strLen = str.length();
    36. List<Character> input = new ArrayList<>();
    37. for (int i = 0; i < strLen; i++) {
    38. input.add(str.charAt(i));
    39. }
    40. StringBuilder sb = new StringBuilder();
    41. for (int i = 0; i < strLen; i++) {
    42. int tmpLen = input.size();
    43. int index = (tmpLen + 1) / 2 - 1;
    44. sb.append(input.remove(index));
    45. }
    46. return sb.toString();
    47. }
    48. }
    1. 文件同步d9c5d567aea60231c88956a57227078.jpg8e864fa83221a7bbbbc66109f019eb4.jpg89d412ee0ea460aa5ce5b2f0c5a6c46.jpg

    2. 整除

    dfcb992de28db146bb8528d13a2bbda.jpgd4f606fb0b97fdbd051c11f41f7633c.jpg97e1ead757e6247458c29f1dbc81abe.jpg