[编程题] 集合

时间限制:1秒

空间限制:32768K

小易最近在数学课上学习到了集合的概念,集合有三个特征:1.确定性 2.互异性 3.无序性.
小易的老师给了小易这样一个集合:
S = { p/q | w ≤ p ≤ x, y ≤ q ≤ z }
需要根据给定的w,x,y,z,求出集合中一共有多少个元素。小易才学习了集合还解决不了这个复杂的问题,需要你来帮助他。

输入描述:

输入包括一行:
一共4个整数分别是w(1 ≤ w ≤ x),x(1 ≤ x ≤ 100),y(1 ≤ y ≤ z),z(1 ≤ z ≤ 100).以空格分隔

输出描述:

输出集合中元素的个数

输入例子1:

1 10 1 1

输出例子1:

10
 

package NeteaseSpring2017;

import java.util.HashSet;

import java.util.Scanner;

public class Set{  

      public static void main(String[] args)

      {

           Scanner scan = newScanner(System.in);    

           while(scan.hasNext())//接受多组输入

         {

                 HashSet set=new HashSet();

                 String temp=scan.nextLine();

                 String[] strs=temp.split(" ");

                 int w=Integer.parseInt(strs[0]);

                 int x=Integer.parseInt(strs[1]);

                 int y=Integer.parseInt(strs[2]);

                 int z=Integer.parseInt(strs[3]);

                 for(int p=w;p<=x;p++)

                      for(int q=y;q<=z;q++)

                      {

                            float s=(float)p/(float)q;

                            if(!set.contains(s))

                                  set.add(s);

                      }

                 System.out.println(set.size());

         }

           scan.close();

      }

}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值