zoukankan      html  css  js  c++  java
  • 列出九宫格输入组合

    题目:列出九宫格键盘输入的所有字母组合

    思路:将字母的组合看成k进制的数,列出字母组合的过程即为对数进行加法运算。

    #include <stdio.h>
    #include <string.h>
    #include <stdlib.h>
    
    char* letter[] = {"abc","def","ghi","jkl","mno","pqrs","tuv","wxyz"};
    
    void listAll(char* input)
    {
    	int len = strlen(input);
    	int total = 1;
    	int i;
    	for ( i=0; i<len; i++)
    	{
    		total = total*strlen(letter[input[i]-'0']);
    	}
    
    	for( i=0; i<total; i++)
    	{
    		//char item[4];
    		char* item = (char*)malloc(len+1);
    		int j;
    		for( j=0; j<len; j++)
    		{
    			int size = strlen(letter[input[j]-'0']);
    			int num = i;
    			int index = num%size;
    			num = num/size;
    			item[j] = letter[input[j]-'0'][index];	
    		}
    		item[j] = '';
    		printf("%s
    ",item);
    		
    	}
    }
    
    int main()
    {
    	char* input = "025";
    	listAll(input);
    
    	return 0;
    }
    

      

  • 相关阅读:
    RoIPooling、RoIAlign笔记
    ROI Align 的基本原理和实现细节
    ROI Align详解
    GIT总结
    java-变量,函数 下
    linux设置静态ip地址
    技术参考网站-网址
    python
    python
    python
  • 原文地址:https://www.cnblogs.com/simonote/p/3247285.html
Copyright © 2011-2022 走看看