Chinaunix首页 | 论坛 | 博客
  • 博客访问: 82788
  • 博文数量: 20
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 137
  • 用 户 组: 普通用户
  • 注册时间: 2014-10-24 08:12
文章分类

全部博文(20)

文章存档

2016年(6)

2015年(14)

分类: Java

2016-06-14 23:36:49

此题很难,很难理解,强烈建议一步一步运行,然后再归纳总结体会
代码如下:

package com.qiyi.biwangshen;


public class Solution {

char[][] c = { {}, {}, { 'A', 'B', 'C' }, { 'D', 'E', 'F' }, { 'G', 'H', 'I' }, { 'J', 'K', 'L' },

{ 'M', 'N', 'O' }, { 'P', 'Q', 'R', 'S' }, { 'T', 'U', 'V' }, { 'W', 'X', 'Y', 'Z' } };

int[] total = { 0, 0, 3, 3, 3, 3, 3, 4, 3, 4 };


public void solution(int len, int[] number, int[] answer) {

while (true) {

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

System.out.println(c[number[i]][answer[i]]);

}

int k = len - 1;

while (k >= 0) {

if (answer[k] < total[number[k]] - 1) {

answer[k]++;

break;

} else {

answer[k] = 0;

k--;

}

}

if (k < 0)

break;


}

}

}


package com.qiyi.biwangshen;


public class Main {


public static void main(String[] args) {

// TODO Auto-generated method stub

Solution solution = new Solution();

int[] number = {2,3,4};

int[] answer = {0,0,0};

int len = number.length;

solution.solution(len, number, answer);

}


}



阅读(1657) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~