锘??xml version="1.0" encoding="utf-8" standalone="yes"?>
//瑙i鎬濊礬錛氭眰涓涓暟鏈鍙寵竟鐨勪竴浣嶆暟錛屽嵆%10錛?br>
//鏁咃細N^N 鐨勬渶鍙寵竟鐨勪竴浣嶆暟鏄? N^N ) % 10,鏍規(guī)嵁鍚屼綑瀹氱悊= (N % 10)^N
//閫氳繃瑙傚療鐢?nbsp;1 - 9鐨?nbsp;N 嬈″箓瀹規(guī)槗鎵懼嚭鐩稿簲鐨勮寰?
#include <iostream>
#include <algorithm>
using namespace std;
#include <stdlib.h>
int main ()
{
int t;
scanf ("%d", &t);
while ( t -- )
{
int n, a;
scanf ("%d", &n);
a = n % 10;
if ( a == 0 )
printf ("%d\n", 0);
else if ( a == 1 )
printf ("%d\n", 1);
else if ( a == 5 )
printf ("%d\n", 5);
else if ( a == 6 )
printf ("%d\n", 6);
else if ( a == 2 )
{
if ( n % 4 == 0 )
printf ("%d\n", 6);
else if ( n % 4 == 1 )
printf ("%d\n", 2);
else if ( n % 4 == 2 )
printf ("%d\n", 4);
else if ( n % 4 == 3 )
printf ("%d\n", 8);
}
else if ( a == 3 )
{
if ( n % 4 == 0 )
printf ("%d\n", 1);
else if ( n % 4 == 1 )
printf ("%d\n", 3);
else if ( n % 4 == 2 )
printf ("%d\n", 9);
else if ( n % 4 == 3 )
printf ("%d\n", 7);
}
else if ( a == 4 )
{
if ( n % 2 == 0 )
printf ("%d\n", 6);
else if ( n % 2 == 1 )
printf ("%d\n", 4);
}
else if ( a == 7 )
{
if ( n % 4 == 0 )
printf ("%d\n", 1);
else if ( n % 4 == 1 )
printf ("%d\n", 7);
else if ( n % 4 == 2 )
printf ("%d\n", 9);
else if ( n % 4 == 3 )
printf ("%d\n", 3);
}
else if ( a == 8 )
{
if ( n % 4 == 0 )
printf ("%d\n", 6);
else if ( n % 4 == 1 )
printf ("%d\n", 8);
else if ( n % 4 == 2 )
printf ("%d\n", 4);
else if ( n % 4 == 3 )
printf ("%d\n", 2);
}
else if ( a == 9 )
{
if ( n % 2 == 0 )
printf ("%d\n", 1);
else if ( n % 2 == 1 )
printf ("%d\n", 9);
}
}
system ("pause");
return 0;
}
]]>
//鏄劇劧鏁版嵁鑼冨洿闈炲父鐨勫ぇ錛屾祴璇昦[10000]鏃跺凡緇忔棤娉曟紜殑琛ㄧず浜?br>
//瑕佺敤鐢ㄧ浉鍏崇殑鐭ヨ瘑榪涜澶勭悊 : ( a + b ) % 3 = ( a % 3 + b % 3) % 3
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int a[1000009];
int main ()
{
int n;
a[0] = 7 % 3;
a[1] = 11 % 3;
for ( int i = 2; i < 1000009; i ++ )
{
a[i] = ( a[i - 1] + a[i - 2] ) % 3;
}
while ( scanf ("%d", &n) != EOF )
{
if ( !a[n] )
printf ("yes\n");
else
printf ("no\n");
}
//system ("pause");
return 0;
}
]]>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <math.h>
int a[100000];
int gcd ( int a, int b)
{
if ( b == 0 )
return a;
else
return gcd ( b, a % b );
}
int lcm ( int a, int b )
{
return a / gcd ( a, b )* b;
}
int main ()
{
int t, m;
scanf ( "%d", &t);
while ( t -- )
{
int temp;
scanf ("%d", &m);
//杈撳叆鏁版嵁
for ( int i = 0; i < m; i ++)
{
scanf ("%d", &a[i]);
}
//姹傚?br>
temp = a[0];
for ( int i = 1; i < m; i ++)
{
temp = lcm ( temp , a[i]);
}
printf ("%d\n", temp);
}
system ("pause");
return 0;
}
]]>
#include <stdio.h>
#include <stdlib.h>
#define Tp 23
#define Te 28
#define Ti 33
int main ()
{
int p, e, i, d;
int num = 1;
while (scanf ("%d%d%d%d", &p, &e, &i, &d) != EOF && (p != -1 && e != -1 && i != -1 && d != -1))
{
int j;
for ( j = 1; j <= 21252; j ++)
{
if ( ((j - p) % Tp == 0) && ((j - e) % Te == 0) && ((j - i) % Ti ==0) )
{
if ( j - d > 0)
printf ("Case %d: the next triple peak occurs in %d days.\n", num, j - d);
else
printf ("Case %d: the next triple peak occurs in %d days.\n", num, j - d + 21252);
break;
}
}
num ++;
}
system ("pause");
return 0;
}
鏈灝辨槸瑕佹眰寰楁弧瓚充笅闈㈡潯浠剁殑 x 鐨勫鹼細
( x - p ) % Tp = 0; ( x - e ) % Te = 0; ( x - i ) % Ti = 0;
鐢卞悓浣欏彲寰楋細x % Tp = p % Tp = a
x % Te = p % Te = b
x % Ti = p % Ti = c
鍐嶇敱涓浗鍓╀綑瀹氱悊灝卞彲浠ョ煡閬撲簡錛?br>
//2.鐢ㄤ腑鍥藉墿浣欏畾鐞嗚В
#include <stdio.h>
#include <stdlib.h>
int main ()
{
int p, e, i , d, x;
int Tp = 23, Te = 28, Ti = 33;
int num = 1;
while (scanf ("%d%d%d%d", &p, &e, &i, &d ) != EOF && (p != -1 && e != -1 && i != -1 && d != -1) )
{
int a = p % Tp;
int b = e % Te;
int c = i % Ti;
int n1, n2, n3;
for (int j = 1; j < 33; j ++)
{
if ( (23 * 28 * j) % 33 == 1)
{
n1 = j;
break;
}
}
for (int j = 1; j < 28; j ++)
{
if ( (23 * 33 * j) % 28 == 1)
{
n2 = j;
break;
}
}
for (int j = 1; j < 23; j ++)
{
if ( (33 * 28 * j) % 23 == 1)
{
n3 = j;
break;
}
}
x = (28 * 23 * n1 * c + 23 * 33 * n2 * b + 28 * 33 * n3 * a ) % (23 * 33 * 28);
if ( x - d > 0)
printf ("Case %d: the next triple peak occurs in %d days.\n", num, x - d);
else
printf ("Case %d: the next triple peak occurs in %d days.\n", num, x - d + 21252);
num++;
}
//system ("pause");
return 0;
} 
]]>
2銆佸埄鐢ㄤ笂闈㈡墍璇寸殑嬈у嚑閲屽痙綆楁硶姹傚嚭鏂圭▼a' * x + b' * y = 1鐨勪竴緇勬暣鏁拌Вx0,y0錛屽垯n' * x0,n' * y0鏄柟紼?/strong>a' * x + b' * y = n'鐨勪竴緇勬暣鏁拌В錛?
3銆佹牴鎹暟璁轟腑鐨勭浉鍏沖畾鐞嗭紝鍙緱鏂圭▼a' * x + b' * y = n'鐨?/strong>鎵鏈夋暣鏁拌В涓猴細
x = n' * x0 + b' * t
y = n' * y0 - a' * t (t涓烘暣鏁?/strong>)
涓婇潰鐨勮В涔熷氨鏄?/strong>a * x + b * y = n 鐨勫叏閮ㄦ暣鏁拌В銆?nbsp;
x鐨勬渶灝忕殑鍙兘鍊兼槸0
§浠?/span>x=0錛屽彲姹傚嚭褰?/span>x鏈灝忔椂鐨?/span>t鐨勫彇鍊鹼紝浣嗙敱浜?/span>x=0鏄彲鑳界殑鏈灝忓彇鍊鹼紝瀹為檯涓婂彲鑳?/span>x鏍規(guī)湰鍙栦笉鍒?/span>0錛岄偅涔堢敱璁$畻鏈虹殑鍙栨暣闄?/span>娉曞彲鐭ワ細鐢?t=c*k1/b綆楀嚭鐨?/span>t錛屼唬鍥?/span>x=c*k1-b*t涓?§姹傚嚭鐨?/span>x鍙兘浼氬皬浜?/span>0錛屾鏃朵護t=t+1錛屾眰鍑虹殑x蹇呭ぇ浜?/span>0錛涘鏋滀唬鍥炲悗x浠嶆槸澶т簬絳変簬0鐨勶紝閭d箞涓嶉渶瑕佸啀鍋氫慨姝c?
//婊¤凍鍏崇郴錛?x + m * s) - (y + n *s) = k*l (k= 0 1 2
)鍗籌細(n - m)*s + l*k = x-y;
//鍒╃敤鎷撳睍鐨勬鍑犻噷寰楄В鍑哄彲鑳界殑s
#include <stdio.h>
#include <stdlib.h>
//姹傛渶澶у叕綰︽暟
__int64 gcd (__int64 a, __int64 b)
{
if (b == 0)
return a;
else
gcd (b, a % b);
}
//姹傚緱婊¤凍 a*x + b*y = d錛涚殑x y
__int64 ex_Gcd (__int64 a, __int64 b, __int64 &x1, __int64 &y1)
{
if ( b == 0 )
{
x1 = 1;
y1= 0;
return a;
}
int r = ex_Gcd( b, a%b, x1, y1);
int temp = x1;
x1 = y1;
y1 = temp - a/b * y1;
}
int main ()
{
__int64 x, y, m, n, l;
int a, b, product, d;//a b 鐨勬渶澶у叕綰︽暟 product
int s, k;
__int64 s1, k1, s2, k2;
while ( scanf ("%I64d%I64d%I64d%I64d%I64d", &x, &y, &m, &n, &l ) != EOF )
{
a = n - m;
b = l;
d = x-y;
product = gcd (a,b);
if ( d % product != 0 )
printf ("Impossible\n");
else
{
a = a / product;
b = b / product;
d = d / product;
ex_Gcd (a, b, s1, k1); //寰楀埌(n-m)/product * s + l/product * k = 1;鐨?nbsp;s k鐨勮В
s2 = d * s1; //寰楀埌(n-m)/product * s + l/product * k = d;鐨?nbsp;s k鐨勮В
k2 = d * k1;
int t;
//s = s2 - b * t; 鐢ㄤ笅闈㈢殑鏂規(guī)硶澶勭悊婊¤凍鏉′歡鐨勮В
//k = k2 - a * t;
t = s2 / b;
s = s2 - b * t;
if ( s <= 0)
{
s += b;
}
printf ("%d\n", s);
}
}
//system ("pause");
return 0 ;
}
]]>
涓銆佸唴瀹癸細
瀵逛簬涓嶅畬鍏ㄤ負 0 鐨勯潪璐熸暣鏁?a錛?/strong>b錛?/strong>gcd錛?/strong>a錛?/strong>b錛夎〃紺?a錛?/strong>b 鐨勬渶澶у叕綰?/strong>鏁幫紝蹇呯劧瀛樺湪鏁存暟瀵?x錛?/strong>y 錛屼嬌寰?gcd錛?/strong>a錛?/strong>b錛?/strong>=ax+by銆傚鏋?/strong>gcd(a, b)錛?/strong>d錛岄偅涔堜竴瀹氬瓨鍦?/strong>x錛?/strong>y婊¤凍ax錛?/strong>by錛漝錛?/strong>
#include <stdio.h>
#include <stdlib.h>
int gcd (int big, int small)

{
if (small==0)
return big;
else
{
gcd (small, big%small);
}
}
int main ()

{
int big, small, temp;
while ( scanf ("%d%d", &big, &small) != EOF )
{
if (big < small)
{
temp = big;
big = small;
small = temp;
}
int b = big;
int s = small;
int result = gcd (big, small);
printf ("%d\n", (b*s) / result);
}
system("pause");
return 0;
}

/**//*1.鏈寸礌娉?nbsp;鍙傚悎 N 寰堝皬鐨勬椂鍊?nbsp; 澶嶆潅搴︼細n * sprt(n)
#include <stdio.h>
#include <stdlib.h>
int main ()
{
int N;
scanf ("%d", &N);
int j,i ;
for ( i = 2; i <= N; i ++) //i
{
for ( j = 2; j*j <= i; j++ )// j <= 鏍瑰彿i
{
if ( i % j == 0 )
break;
}
if ( j*j > i )
printf ("%d ",i);
}
system("pause");
return 0;
}*/
/**//*2.鏈綆鍗曠殑绱犳暟琛伴夋硶:鎬濊礬錛氬洜涓哄伓鏁頒笉鍙兘鏄礌鏁幫紝鑰屼笖絎竴涓鏁版槸绱犳暟錛?br>
//鏁呭畾涔変竴涓猵rime鏁扮粍錛屽皢鍏朵笅鏍囦負鍋剁殑鍒濆鍖栦負flase錛岃屼笅琛ㄤ負濂囩殑鍒濆鍖杢rue錛屽茍涓斿鏁扮殑鍋舵暟鍊峟alse
//杈撳嚭 0-100鍐呯殑绱犳暟
//緙虹偣錛?nbsp;濂囨暟鐨勫嶆暟璧嬩負false 鏃訛紝鍑虹幇浜嗗悓涓涓嬈℃爣璁幫紱濡傦細3 5 鐨勫嶆暟 15 琚袱嬈℃爣璁?nbsp;
#include <stdio.h>
#include <stdlib.h>
int main ()
{
bool prime[101];
int i, j, k;
for ( i = 0; i < 101; i++)
{
if ( i % 2== 0)
prime[i] = false;
else
prime[i] = true;
}
prime[2] = true;prime[1] = false;//鐗逛緥澶勭悊
for ( j = 3; j < 101; j++)//灝嗗鏁扮殑鍊嶆暟璧嬩負false
{
if ( prime[j] == true )
{
for (int m = 2*j; m < 101; m+=j)
{
prime[m] = false;
}
}
}
for ( k = 0; k < 101; k ++)
{
if (prime[k]==true)
printf ("%d ", k);
}
system("pause");
return 0;
}*/

/**//*3.Eraosthenes絳涙硶:寰楀埌涓涓柊鐨勭礌鏁板悗灝嗗畠鐨勫嶆暟鍓旈櫎鎺?br>
//緙虹偣錛氬墧闄ょ礌鏁扮殑鍊嶆暟鏃訛紝鍑虹幇浜嗗悓涓涓嬈℃爣璁幫細濡?nbsp;2 3 鐨勫嶆暟 6 12
#include <stdio.h>
#include <stdlib.h>
int main ()
{
static int prime[101];
prime[0] = 1; prime[1] = 1;
int i , j;
for ( i = 2; i < 101; i ++)
{
if ( ! prime[i] ) //鏄礌鏁?nbsp;
{
for (j = 2*i; j < 101; j+=i)
{
prime[j] = 1;
}
}
}
for (int m = 2; m < 101; m++)
{
if ( !prime[m] )
printf ("%d ",m);
}
system("pause");
return 0;
}*/
//綰挎raosthenes絳涢夌礌鏁扮殑鏂規(guī)硶錛氬悓鏍風(fēng)殑鎬濊礬閬垮厤浜嗕笂榪扮殑緙虹偣
//鐞嗚В榪欑鏈哄埗
#include <stdio.h>
#include <stdlib.h>
#define MAXSIZE 1000
int tag[MAXSIZE + 1];
int main ()

{
int prime[MAXSIZE];
int i, j;
int cn = 0;
for (i = 2; i< MAXSIZE + 1; i ++)
{
if ( !tag[i] )
prime[cn++] = i;
for ( j = 0; (j < cn) && (prime[j] * i < MAXSIZE + 1) ; j++ )
{
tag[ i * prime[j] ] = 1; //鏈澶氭爣璁板埌鏈韓鐨勫嶆暟錛岃宲rime銆恓銆戠殑鏈澶ф伆濂戒負 i 錛岃?nbsp;鏈澶ф椂 j = cn錛?nbsp;
if ( i % prime[j] == 0 )
break;
}
}
printf ("%d\n", cn);
for (int m = 0; m < cn; m ++)
{
printf ("%d ",prime[m]);
}
printf ("\n");
system("pause");
return 0;
}


浣?×7琚?闄や綑1錛岀敤35×2=70錛?
浣?×7琚?闄や綑1錛岀敤21×1=21錛?
浣?×5琚?闄や綑1錛岀敤15×1=15銆?
錛?0×2+21×3+15×2錛?錛?×5×7錛?23
鎵浠 = 23
#include <stdio.h>
#include <stdlib.h>
#define MAXSIZE 65535
int tag[MAXSIZE + 1];
int prime[MAXSIZE];
int cn ; 
void is_prime ()

{
for (int i = 2; i < MAXSIZE + 1; i ++)
{
if ( !tag[i] )
prime[cn++] = i;
for ( int j = 0 ; (j < cn) && ( i*prime[j] < MAXSIZE + 1 ) ; j ++ )
{
tag[ i * prime[j] ] = 1;
if ( i % prime [j] == 0)
break;
}
}
}
int main ()

{
is_prime ();
int n;
int elem[60000];
while ( scanf ("%d", &n) != EOF )
{
if ( !tag[n] )
{
printf ("%d\n",n);
continue;
}
else
{
int j = 0;
for (int i = 0; i < cn && n != 1 ; i ++)
{
while ( n % prime[i] == 0 )
{
elem[j] = prime[i];
n = n / prime[i];
j ++;
}
}
printf ("%d", elem[0]);
for (int m = 1; m < j; m++)
{
printf ("*%d",elem[m]);
}
printf ("\n");
}
}
//system ("pause");
return 0;
}
//涓轟粈涔堣鎶婅寖鍥寸緝?yōu)畯鍒皀鐨勬柟鏍逛箣鍐呭憿錛燂紵
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
# define MAXSIZE 40000
int prime[MAXSIZE];
int primeElem[MAXSIZE];
int cn; //0 -- n鍐呯礌鏁扮殑涓暟 
void is_prime ( )

{
for (int i = 2; i < MAXSIZE; i ++)
{
if ( !prime [i] )
{
for (int j = 2 * i; j < MAXSIZE; j += i)
{
prime [j] = 1;
}
//鎶?nbsp;0 -- n 鍐呯殑绱犳暟瀛樺埌鏁扮粍涓?nbsp;
primeElem[cn ++] = i;
}
}
}
int main ()

{
int m, n;
is_prime( );
while ( scanf ("%d", &m) != EOF )
{
for ( int i = 0; i < m; i ++)
{
scanf ("%d", &n);
//鎵懼埌 n 浠ュ唴鐨?nbsp;绱犲洜瀛?br>39
int product = 1;
int flag = 0;
for ( int j = 0; j < cn; j ++)
{
flag = (int) sqrt (n * 1.0) + 1; //n 鐨?nbsp;鏂規(guī)牴
if ( primeElem[j] > flag ) //p1銆乸2銆乸3 榪欎簺绱犳暟瑕?nbsp;< n
break;
int e = 0;
while ( n % primeElem[j] == 0 )
{
e ++;
n /= primeElem[j];
}
product *= ( 1 + 2 * e);
}
if ( n > 1 )
product *= 3; //榪欐瑕佹敞鎰忥紝鏈鍚庢湁鍙兘鍓╀笅鐨刵鏈韓灝辨槸鍘熸潵n鐨勭礌鍥犲瓙 ????
printf ("Scenario #%d:\n", i+1);
printf ("%d\n", ( product + 1 )/2 );
printf ("\n");
}
}
//system ("pause");
return 0;
}