锘??xml version="1.0" encoding="utf-8" standalone="yes"?>
2
3 #include <stdio.h>
4 #include <stdlib.h>
5
6 const int size = 1100000 ;
7 int isPrime[size+100] ;
8
9 int QUEprime[size] ;
10 int QUEsize ;
11
12 int ina, inb ;
13
14 void Init_isPrime()
15 {
16 isPrime[0] = isPrime[1] = 0 ;
17 for( int i=2; i<size; i++ ) isPrime[i] = 1 ;
18
19 int maxi = size / 2 ;
20 for( int i=2; i<=maxi; i++ )
21 {
22 if( !isPrime[i] ) continue ;
23 for( int j=2; i*j<size; j++ )
24 {
25 isPrime[i*j] = 0 ;
26 }
27 }
28
29 QUEsize = 0 ;
30 for( int i=2; i<size; i++ )
31 {
32 if( isPrime[i] )
33 {
34 QUEsize ++ ;
35 QUEprime[QUEsize] = i ;
36 }
37 }
38 }
39
40 int main()
41 {
42 Init_isPrime() ;
43
44 while( scanf( "%d %d", &ina, &inb ) != EOF )
45 {
46 int suma = 0 ; int sumb = 0 ;
47 int prima = 0 ; int primb = 0 ;
48
49 for( int i=1; i<=QUEsize; i++ )
50 {
51 if( QUEprime[i] > ina ) break ;
52 if( 0 == ina % QUEprime[i] )
53 {
54 suma += QUEprime[i] ;
55 prima = QUEprime[i] ;
56 while( 0 == ina % QUEprime[i] )
57 {
58 ina = ina / QUEprime[i] ;
59 }
60 }
61 }
62
63 for( int i=1; i<=QUEsize; i++ )
64 {
65 if( QUEprime[i] > inb ) break ;
66 if( 0 == inb % QUEprime[i] )
67 {
68 sumb += QUEprime[i] ;
69 primb = QUEprime[i] ;
70 while( inb % QUEprime[i] )
71 {
72 inb = inb / QUEprime[i] ;
73 }
74 }
75 }
76
77 int outa = prima - (suma - prima) ;
78 int outb = primb - (sumb - primb) ;
79
80 if( outa >= outb )
81 {
82 printf( "a\n" ) ;
83 }
84 else
85 {
86 printf( "b\n" ) ;
87 }
88 }
89
90 return 0 ;
91 }
]]>
2 #include <iostream>
3 using namespace std ;
4
5 const int size = 42 ;
6
7 unsigned fib[50] ;
8 int inn ;
9
10 void InitFIB()
11 {
12 fib[1] = fib[2] = 1 ;
13
14 for( int i=3; i<=size; i++ )
15 {
16 fib[i] = fib[i-1] + fib[i-2] ;
17 }
18
19 for( int i=2; i<=size; i++ )
20 {
21 fib[i] += fib[i-1] ;
22 }
23 }
24
25 int main()
26 {
27 InitFIB() ;
28
29 while( cin >> inn )
30 {
31 cout << fib[inn] << endl ;
32 }
33
34 return 0 ;
35 }
]]>
2
3 //澶氶噸騫傝鏁伴棶棰?nbsp;-- catalan鏁?/span>
4
5 /*
6 Cn = (2*n)!
7 ------------
8 (n+1)!(n)!
9 */
10 #include <iostream>
11 using namespace std ;
12
13 int inn ;
14
15 unsigned __int64 Catalan( int n )
16 {
17 unsigned __int64 reval = 1 ;
18
19 int num[100] ;
20 memset( num, 0, sizeof(num) ) ;
21
22 for( int i=n+1; i<=2*n; i++ )
23 {
24 reval = reval * i ;
25 for( int j=2; j<=n+1; j++ )
26 {
27 if( 0 == num[j] && 0 == reval % j )
28 {
29 reval = reval / j ;
30 num[j] = 1 ;
31 }
32 }
33 }
34
35 return reval ;
36 }
37
38 int main()
39 {
40 while( cin >> inn )
41 {
42 cout << Catalan( inn-1 ) << endl ;
43 }
44
45 return 0 ;
46 }
]]>