# Monthly Archives: December 2010

## Poj Solution 1671

http://poj.org/problem?id=1671 import java.util.*; public class Main{ static double dp[][]=new double[51][51]; static { dp[1][1]=1; for (int i=2;i<=50;i++) for(int j=1;j<=50;j++) dp[i][j]=dp[i-1][j-1]+dp[i-1][j]*j; } public static void main(String args[]){ Scanner sc=new Scanner(System.in); while (sc.hasNext()) { int n=sc.nextInt(); if(n==0) break; double ans=0; for (int i=1;i<=n;i++) … Continue reading

## Poj Solution 1666

http://poj.org/problem?id=1666 //* @author ������&lt;hongxp11@163.com&gt; import java.util.Scanner; public class Main { /** * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub Scanner in = new Scanner(System.in); while (true) { int student = in.nextInt(); if (0 … Continue reading

## Poj Solution 1664

http://poj.org/problem?id=1664 import java.io.BufferedInputStream; import java.util.Scanner; /** * *poj1664 * f(m, n) = f(m-n, n) + f(m, n-1) * f(m, n): ��m��ƻ��ŵ�n�������еķ����� * f(m, n-1): ��m��ƻ��ŵ�n-1�������еķ�����(����������һ�������) * f(m-n, n): ��m��ƻ��ŵ�n��������,����ÿ�������ж���ƻ��(����n���4,��m-n��ź���,Ȼ��ÿ�����ӷ�һ��) * @author NC */ public class Main { public static void … Continue reading

## Poj Solution 1661

http://poj.org/problem?id=1661 import java.util.Arrays; import java.util.Scanner; /** * POJ1661 * @author Bruce * */ class Board implements Comparable<Board>{ int lx; int rx; int h; public Board(int x,int y,int h){ this.lx = x; this.rx = y; this.h = h; } public int … Continue reading

## Poj Solution 1659

http://poj.org/problem?id=1659 //* @author: 82638882@163.com import java.io.*; import java.util.*; public class Main { static int[][] p; static ri[] arr; public static void main(String[] args) throws IOException { InputStreamReader is=new InputStreamReader(System.in); BufferedReader in=new BufferedReader(is); int n=Integer.parseInt(in.readLine()); while((n–)!=0) { int m=Integer.parseInt(in.readLine()); p=new int[m][m]; … Continue reading

## Poj Solution 1658

http://poj.org/problem?id=1658 //* @author ������&lt;hongxp11@163.com&gt; import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner in = new Scanner(System.in); int n = in.nextInt(); for(int i = 0; i < n; i++) { int one = in.nextInt(); int two … Continue reading

## Poj Solution 1657

http://poj.org/problem?id=1657 #include <stdio.h> #include <math.h> int main() { int t; scanf("%d", &t); char c1, c2; int x1, y1, x2, y2; int w, h, c, x; while (t–) { getchar(); scanf("%c%d %c%d", &c1, &y1, &c2, &y2); x1 = c1 – ‘a’ … Continue reading

## Poj Solution 1656

http://poj.org/problem?id=1656 import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner in = new Scanner(System.in); int num = in.nextInt(); int[][] grids = new int[101][101]; for(int i = 0; i< num; i++) { String color = in.next(); int … Continue reading

## Poj Solution 1655

http://poj.org/problem?id=1655 #include<iostream> using namespace std; typedef struct edge {int a; struct edge *p; }edge; edge *a[21000]; int s[21000]; int b[21000]; int f[21000]; int fr[21000]; int go; void find(int from,int to) {edge *p; p=a[to];fr[to]=from; while(p) {if(p->a==from){p=p->p;continue;} find(to,p->a);p=p->p; } f[go–]=to; } int … Continue reading