首页 > 专题系列 > Java解POJ > POJ 2864 Pascal Library [解题报告] Java
2013
11-12

POJ 2864 Pascal Library [解题报告] Java

Pascal Library

问题描述 :

Pascal University, one of the oldest in the country, needs to renovate its Library Building, because after all these centuries the building started to show the effects of supporting the weight of the enormous amount of books it houses.

To help in the renovation, the Alumni Association of the University decided to organize a series of fund-raising dinners, for which all alumni were invited. These events proved to be a huge success and several were organized during the past year. (One of the reasons for the success of this initiative seems to be the fact that students that went through the Pascal system of education have fond memories of that time and would love to see a renovated Pascal Library.)

The organizers maintained a spreadsheet indicating which alumni participated in each dinner. Now they want your help to determine whether any alumnus or alumna took part in all of the dinners.

输入:

The input contains several test cases. The first line of a test case contains two integers N and D indicating respectively the number of alumni and the number of dinners organized (1 <= N <= 100 and 1 <= D <= 500). Alumni are identified by integers from 1 to N. Each of the next D lines describes the attendees of a dinner, and contains N integers Xi indicating if the alumnus/alumna i attended that dinner (Xi = 1) or not (Xi = 0). The end of input is indicated by N = D = 0.

输出:

For each test case in the input your program must produce one line of output, containing either the word `yes’, in case there exists at least one alumnus/alumna that attended all dinners, or the word `no’ otherwise.

样例输入:

3 3
1 1 1
0 1 1
1 1 1
7 2
1 0 1 0 1 0 1
0 1 0 1 0 1 0
0 0

样例输出:

yes
no

温馨提示:

Alumna: a former female student of a particular school, college or university.

Alumnus: a former male student of a particular school, college or university.

Alumni: former students of either sex of a particular school, college or university.

解题代码:

//* @author  [email protected]
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.StringTokenizer;
public class Main {
 public static void main(String[] args) throws IOException {
  BufferedReader stdin=new BufferedReader(new InputStreamReader(System.in));
   StringTokenizer tokens;
   int din,stu;
   boolean[] st=new boolean[100];
   boolean band;
   while(true){
	tokens=new StringTokenizer(stdin.readLine());
	stu=Integer.parseInt(tokens.nextToken());
	din=Integer.parseInt(tokens.nextToken());
	if(stu==0&&din==0)break;
	for(int i=0;i< stu;i++)st[i]=false;
	for(int i=0;i< din;i++){
		tokens=new StringTokenizer(stdin.readLine());
		for(int j=0;j< stu;j++){
			if(tokens.nextToken().equals("0")){
				st[j]=true;
			}
		}
	}
	band=false;
	for(int i=0;i< stu;i++) {if(!st[i]) band=true;}			
	if(band)System.out.println("yes");
	else System.out.println("no");		
  }
 }
}

  1. 站长好。我是一个准备创业的互联网小白,我们打算做一个有关国*际*游*学的平台。手上也有了一些境外资源。现阶段的团队现在没有cto.原意出让一些管理股寻找一个靠谱的技术专家做合伙人, 不知道是不是能得到您的帮助。发个帖子或者其他方式。期待您的回应。可以加我微信tianxielemon聊聊。