A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 邓海涛 中级黑马   /  2012-4-8 22:17  /  2221 人查看  /  5 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

数字对:输入N(2 ≤N≤ 100 个数 个数 ) 字,每个数字在0 与9 之间 ,根据输入的数字对,统计该数字对出现的对数,
  比如N=20 时数,下面的 字中:0 1 5 9 8 7 2 2 2 3 2 7 8 7 8 7 9 6 5 9 数 字对(7 ,8 )=2 (8 ,7 )=3。
  如果没有找到数字对,则输出Not Found!
  样输例入 :
  20
  0 1 5 9 8 7 2 2 2
  3
  7 8
  8 7
  9 0  
  样例输出
  (7,8)=2
  (8,7)=3
  Not Found!

哎,我一天到晚问这么多问题,我自己也觉得自己就是真的太差了,问题太多,懂的太少,求大家帮帮忙,我基础差...

5 个回复

倒序浏览
能问出问题已经很不错了兄弟,我这基础差的连问题都问不出来~
回复 使用道具 举报
import java.util.*;
public class T_1{
        public static void main(String[] args){
                Scanner scan=new Scanner(System.in);
                Set<Integer> set=new HashSet<Integer>();
               
                StringBuffer sb=new StringBuffer();
                int total=0;
                total=scan.nextInt();
                int temp=0;
               
                while((temp=scan.nextInt())!=0){
                        set.add(temp);
                        sb.append(temp);
                       
                }
                String str=sb.toString();
                int num=0;
                if(str.length()!=total){
                        System.out.println("输出的数字个数有误。。");
                }else{
                        for(int i=0;i<set.size();i++){
                                int flag=0;
                                while(flag!=-1){
                                        flag=str.indexOf(list.get(i)+"");
                                        if(flag!=-1){
                                                num++;
                                        }
                                        str=str.substring(flag+1);
                                }
                               
                                System.out.println(set.get(i)+"出现了"+num+"次。。");
                                num=0;
                               
                        }
                }
        }
}
自己临时编写了一个程序。
这个方法基本能实现你给的题目要求。。

评分

参与人数 1技术分 +1 收起 理由
贠(yun)靖 + 1

查看全部评分

回复 使用道具 举报
恩,我昨天也想了很久编了个,结果是正确的,就不知道效率怎么样了,求高手帮看看啊
import java.util.*;
public class figureDouble {
        public static void main(String[] args){
     Scanner  scan=new Scanner(System.in);
     int n=scan.nextInt();
     int[] arr =new int[n];
     for(int i=0;i<n;i++){
             arr[i]=scan.nextInt();
     }
     int n1=scan.nextInt();
     int[][] array=new int[100][2];
     for(int i=0;i<n1;i++){
       array[i][0]=scan.nextInt();
       array[i][1]=scan.nextInt();
     }
     
     int [] c=new int[n1];
     for(int i=0;i<n1;i++){
             int temp1=array[i][0];int temp2=array[i][1];
             int count=0;
             for(int j=0;j<arr.length-1;j++){
                     if(temp1==arr[j]&&temp2==arr[j+1]){
                             count++;
                     }
             }
             c[i]=count;
     }
     
     for(int i=0;i<n1;i++){
             if(c[i]!=0){
              System.out.println("("+array[i][0]+","+array[i][1]+")="+c[i]);
             }else {
              System.out.println("Not Found!");
             }
     }
     
     
        }               
       
}

评分

参与人数 1技术分 +1 收起 理由
贠(yun)靖 + 1 基础应该不算差吧,加油哦~~!.

查看全部评分

回复 使用道具 举报
恩,谢谢版主,我再接再厉!
回复 使用道具 举报
我操!(此回复虽有且仅有兩个字,却深刻地表达了回复人的惊讶与暴脾气,反应出作者性格十分暴力,变态,辣手催花,足以见作者从小骂人练就的扎实的文字功底和颠倒黑白的写作技巧及惨绝人寰的创新能力。实是禽兽不如!再加上以感叹号收尾,点睛之笔,妙笔生花,意境深远,照应前文,升华主题,在‘我操’后面加上**,胸部,臀部。。等等词汇给人无限感动和遐想有浑然天成之感,实乃回复中之极品,沙发占座中之绝笔。)
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马