2189
#include<stdio.h>
#define MAX 151
int a[MAX],b[MAX];
int num[]={
2,3,5,7,11,13,17,19,23,29,
31,37,41,43,47,53,59,61,67,71,
73,79,83,89,97,101,103,107,109,113,
127,131,137,139,149
};
int main(){
int c,i,j,k,n;
scanf("%d",&c);
while(c--){
scanf("%d",&n);
for(i=0;i<MAX;i++){
a[i]=b[i]=0;
}
a[0]=1;
for(i=0;i<35;i++){
for(j=0;j<MAX;j++){
if(a[j])
for(k=0;k+j<MAX;k+=num[i]){
b[j+k]+=a[j];
}
}
for(j=0;j<MAX;j++){
a[j]=b[j];
b[j]=0;
}
}
printf("%d\n",a[n]);
}
return 0;
}
#define MAX 151
int a[MAX],b[MAX];
int num[]={
2,3,5,7,11,13,17,19,23,29,
31,37,41,43,47,53,59,61,67,71,
73,79,83,89,97,101,103,107,109,113,
127,131,137,139,149
};
int main(){
int c,i,j,k,n;
scanf("%d",&c);
while(c--){
scanf("%d",&n);
for(i=0;i<MAX;i++){
a[i]=b[i]=0;
}
a[0]=1;
for(i=0;i<35;i++){
for(j=0;j<MAX;j++){
if(a[j])
for(k=0;k+j<MAX;k+=num[i]){
b[j+k]+=a[j];
}
}
for(j=0;j<MAX;j++){
a[j]=b[j];
b[j]=0;
}
}
printf("%d\n",a[n]);
}
return 0;
}
1005
#include<stdio.h>
int main(){
//freopen("test.in","r",stdin);
//freopen("test.out","w",stdout);
int a,b,i;
long n;
int f[201];
f[1]=f[2]=1;
while(scanf("%d %d %ld",&a,&b,&n)){
if(a==0&&b==0&&n==0) break;
int cnt=0;
for(i=3;i<=200;i++){ //打表找到周期
f[i]=(a*f[i-1]+b*f[i-2])%7;
if(f[i]==1&&f[i-1]==1)break;
if(f[i]==0&&f[i-1]==0){cnt=1;break;}//这里有个小陷阱,如果A=7,B=7则后面都为0了
}
if(cnt){printf("0\n");continue;}
if(i>n){printf("%d\n",f[n]);continue;}
i-=2;//i为周期
n%=i;
if(n==0)n=i;
printf("%d\n",f[n]);
}
return 0;
}
int main(){
//freopen("test.in","r",stdin);
//freopen("test.out","w",stdout);
int a,b,i;
long n;
int f[201];
f[1]=f[2]=1;
while(scanf("%d %d %ld",&a,&b,&n)){
if(a==0&&b==0&&n==0) break;
int cnt=0;
for(i=3;i<=200;i++){ //打表找到周期
f[i]=(a*f[i-1]+b*f[i-2])%7;
if(f[i]==1&&f[i-1]==1)break;
if(f[i]==0&&f[i-1]==0){cnt=1;break;}//这里有个小陷阱,如果A=7,B=7则后面都为0了
}
if(cnt){printf("0\n");continue;}
if(i>n){printf("%d\n",f[n]);continue;}
i-=2;//i为周期
n%=i;
if(n==0)n=i;
printf("%d\n",f[n]);
}
return 0;
}
1008
#include<stdio.h>
#define MAX 101
int main(){
int n,m,num,start,res;
while(scanf("%d",&n),n){
res=0;
start=0;
m=n;
while(n--){
scanf("%d",&num);
res=res+(num>start?(num-start)*6:(start-num)*4);
start=num;
}
printf("%d\n",m*5+res);
}
return 0;
}
#define MAX 101
int main(){
int n,m,num,start,res;
while(scanf("%d",&n),n){
res=0;
start=0;
m=n;
while(n--){
scanf("%d",&num);
res=res+(num>start?(num-start)*6:(start-num)*4);
start=num;
}
printf("%d\n",m*5+res);
}
return 0;
}
1012
#include<stdio.h>
int main()
{
printf("n e\n");
printf("- -----------\n");
printf("0 1\n");
printf("1 2\n");
printf("2 2.5\n");
printf("3 2.666666667\n");
printf("4 2.708333333\n");
printf("5 2.716666667\n");
printf("6 2.718055556\n");
printf("7 2.718253968\n");
printf("8 2.718278770\n");
printf("9 2.718281526\n");
}
int main()
{
printf("n e\n");
printf("- -----------\n");
printf("0 1\n");
printf("1 2\n");
printf("2 2.5\n");
printf("3 2.666666667\n");
printf("4 2.708333333\n");
printf("5 2.716666667\n");
printf("6 2.718055556\n");
printf("7 2.718253968\n");
printf("8 2.718278770\n");
printf("9 2.718281526\n");
}
1016
#include<stdio.h>
#include<string.h>
int a[25]={2,3,5,7,11,13,17,19,23,29,31,37,41,43,47,53,59,61,67,71,73};
int num[25],flag[25],pri[100],n;
void dsf(int x,int y)
{
int i;
if(y==n)
{
if(pri[x+1]==1)
{
for(i=1;i<n;i++)
printf("%d ",num[i]);
printf("%d\n",num[i]);
}
return;
}
for(i=2;i<=n;i++)
if(flag[i]==0&&pri[x+i]==1)
{
flag[i]=1;
num[y+1]=i;
dsf(i,y+1);
flag[i]=0;
}
}
int main()
{
int ct=0,i;
memset(pri,0,sizeof(pri));
for(i=0;i<15;i++)
pri[a[i]]=1;
while(scanf("%d",&n)!=EOF)
{
memset(flag,0,sizeof(flag));
printf("Case %d:\n",++ct);
flag[1]=1;
num[1]=1;
dsf(1,1);
printf("\n");
}
}
1048
#include<string.h>
int a[25]={2,3,5,7,11,13,17,19,23,29,31,37,41,43,47,53,59,61,67,71,73};
int num[25],flag[25],pri[100],n;
void dsf(int x,int y)
{
int i;
if(y==n)
{
if(pri[x+1]==1)
{
for(i=1;i<n;i++)
printf("%d ",num[i]);
printf("%d\n",num[i]);
}
return;
}
for(i=2;i<=n;i++)
if(flag[i]==0&&pri[x+i]==1)
{
flag[i]=1;
num[y+1]=i;
dsf(i,y+1);
flag[i]=0;
}
}
int main()
{
int ct=0,i;
memset(pri,0,sizeof(pri));
for(i=0;i<15;i++)
pri[a[i]]=1;
while(scanf("%d",&n)!=EOF)
{
memset(flag,0,sizeof(flag));
printf("Case %d:\n",++ct);
flag[1]=1;
num[1]=1;
dsf(1,1);
printf("\n");
}
}
1048
#include<stdio.h>
#include<string.h>
#define MAX 105
char s[MAX];
int main(){
int i,len;
char a[10],b[10];
while(scanf("%s",a),strcmp(a,"ENDOFINPUT")){
getchar();
gets(s);
scanf("%s",b);
len=strlen(s);
for(i=0;i<len;i++){
if(s[i]>='F'&&s[i]<='Z'){
s[i]=s[i]-5;
continue;
}
if(s[i]>='A'&&s[i]<='E'){
s[i]+=21;
}
}
puts(s);
if(strcmp(b,"END")==0){
continue;
}
}
return 0;
}
#include<string.h>
#define MAX 105
char s[MAX];
int main(){
int i,len;
char a[10],b[10];
while(scanf("%s",a),strcmp(a,"ENDOFINPUT")){
getchar();
gets(s);
scanf("%s",b);
len=strlen(s);
for(i=0;i<len;i++){
if(s[i]>='F'&&s[i]<='Z'){
s[i]=s[i]-5;
continue;
}
if(s[i]>='A'&&s[i]<='E'){
s[i]+=21;
}
}
puts(s);
if(strcmp(b,"END")==0){
continue;
}
}
return 0;
}
1062
#include<stdio.h>
#include<string.h>
#define MAX 1050
char s[MAX];
int main(){
int t,i,j,len,n;
scanf("%d",&t);
n=0;
getchar();
while(t--){
gets(s);
len=strlen(s);
for(i=0;i<len;i++){
if(s[i]==' '){
n++;
for(j=i-1;j>=0;j--){
if(s[j]==' ')
break;
printf("%c",s[j]);
}
printf(" ");
}
}
if(n){
for(i=len-1;i>=0;i--){
if(s[i]==' ')
break;
printf("%c",s[i]);
}
}
printf("\n");
}
return 0;
}
#include<string.h>
#define MAX 1050
char s[MAX];
int main(){
int t,i,j,len,n;
scanf("%d",&t);
n=0;
getchar();
while(t--){
gets(s);
len=strlen(s);
for(i=0;i<len;i++){
if(s[i]==' '){
n++;
for(j=i-1;j>=0;j--){
if(s[j]==' ')
break;
printf("%c",s[j]);
}
printf(" ");
}
}
if(n){
for(i=len-1;i>=0;i--){
if(s[i]==' ')
break;
printf("%c",s[i]);
}
}
printf("\n");
}
return 0;
}
1106
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
#define MAX 1005
char str[MAX];
int a[MAX];
int cmp(const void *a,const void *b){
return *((int *)a)-*((int *)b);
}
int main(){
int n,i,j,k;
int length;
char *s;
while(scanf("%s",str)!=EOF){
n=0;j=0;
length=strlen(str);
s=(char *)malloc(sizeof(char)*11);
for(i=0;;i++){
k=0;
while(j<length&&str[j]!='5'){
s[k]=str[j];
k++;
++j;
}
s[k]=0;
if(j<length&&str[j]=='5'){
if(k==0){
i--;
}else{
a[i]=atoi(s);//atoi()将字符串转换成整形数据
n++;
}
}else{
if(strlen(s)!=0){
a[i]=atoi(s);
n++;
}
break;
}
j++;
}
qsort(a,n,sizeof(int),cmp);
printf("%d",a[0]);
for(i=1;i<n;i++){
printf(" %d",a[i]);
}
printf("\n");
}
return 0;
}
#include<stdlib.h>
#include<string.h>
#define MAX 1005
char str[MAX];
int a[MAX];
int cmp(const void *a,const void *b){
return *((int *)a)-*((int *)b);
}
int main(){
int n,i,j,k;
int length;
char *s;
while(scanf("%s",str)!=EOF){
n=0;j=0;
length=strlen(str);
s=(char *)malloc(sizeof(char)*11);
for(i=0;;i++){
k=0;
while(j<length&&str[j]!='5'){
s[k]=str[j];
k++;
++j;
}
s[k]=0;
if(j<length&&str[j]=='5'){
if(k==0){
i--;
}else{
a[i]=atoi(s);//atoi()将字符串转换成整形数据
n++;
}
}else{
if(strlen(s)!=0){
a[i]=atoi(s);
n++;
}
break;
}
j++;
}
qsort(a,n,sizeof(int),cmp);
printf("%d",a[0]);
for(i=1;i<n;i++){
printf(" %d",a[i]);
}
printf("\n");
}
return 0;
}
1131
#include<stdio.h>
#include<string.h>
#define MAX 100
#define BASE 10000
void multiply(int a[],int Max,int b) //大数乘法,注意参数的传递
{
int i,array=0;
for (i = Max-1; i >= 0; i--)
{
array += b * a[i];
a[i] = array % BASE; // 数组每一位存放大数的四位数字
array /= BASE;
}
}
void divide(int a[], int Max, int b) //模拟大数除法
{
int i, div = 0;
for (i = 0; i < Max; i++)
{
div = div * BASE + a[i];
a[i] = div / b;
div %= b;
}
}
int main()
{
int a[101][MAX],i,n;
while (scanf("%d",&n),n)
{
memset(a[1],0,MAX*sizeof(int));
for (i=2, a[1][MAX-1] = 1; i < 101; i++) // 高坐标存放大数低位
{
memcpy(a[i], a[i-1], MAX * sizeof(int)); //h[i] = h[i-1];
multiply(a[i], MAX, 4 * i - 2); //h[i] *= (4*i-2);
divide(a[i], MAX, i + 1);//h[i] /= (i+1);
multiply(a[i],MAX,i);//h[i]=h[i]*n!
}
for (i = 0; i < MAX && a[n][i] == 0; i++); //去掉数组前为0的数字。
printf("%d",a[n][i++]); //输出第一个非0数
for (; i < MAX; i++)
{
printf("%04d",a[n][i]);//输出后面的数,并每位都保持4位长度!(32767)
}
for(i=2;i<=n;i++){
multiply(a[i],MAX,i);
}
printf("\n");
}
return 0;
}
#include<string.h>
#define MAX 100
#define BASE 10000
void multiply(int a[],int Max,int b) //大数乘法,注意参数的传递
{
int i,array=0;
for (i = Max-1; i >= 0; i--)
{
array += b * a[i];
a[i] = array % BASE; // 数组每一位存放大数的四位数字
array /= BASE;
}
}
void divide(int a[], int Max, int b) //模拟大数除法
{
int i, div = 0;
for (i = 0; i < Max; i++)
{
div = div * BASE + a[i];
a[i] = div / b;
div %= b;
}
}
int main()
{
int a[101][MAX],i,n;
while (scanf("%d",&n),n)
{
memset(a[1],0,MAX*sizeof(int));
for (i=2, a[1][MAX-1] = 1; i < 101; i++) // 高坐标存放大数低位
{
memcpy(a[i], a[i-1], MAX * sizeof(int)); //h[i] = h[i-1];
multiply(a[i], MAX, 4 * i - 2); //h[i] *= (4*i-2);
divide(a[i], MAX, i + 1);//h[i] /= (i+1);
multiply(a[i],MAX,i);//h[i]=h[i]*n!
}
for (i = 0; i < MAX && a[n][i] == 0; i++); //去掉数组前为0的数字。
printf("%d",a[n][i++]); //输出第一个非0数
for (; i < MAX; i++)
{
printf("%04d",a[n][i]);//输出后面的数,并每位都保持4位长度!(32767)
}
for(i=2;i<=n;i++){
multiply(a[i],MAX,i);
}
printf("\n");
}
return 0;
}
1134
#include<stdio.h>
#include<string.h>
#define MAX 100
#define BASE 10000
void multiply(int a[],int Max,int b){
int i,array=0;
for(i=Max-1;i>=0;i--){
array+=b*a[i];
a[i]=array%BASE;
array/=BASE;
}
}
void divide(int a[],int Max,int b){
int i,div=0;
for(i=0;i<Max;i++){
div=div*BASE+a[i];
a[i]=div/b;
div%=b;
}
}
int main(){
int a[101][MAX],i,n;
while(scanf("%d",&n)&&n!=-1){
memset(a[1],0,MAX*sizeof(int));
for(i=2,a[1][MAX-1]=1;i<101;i++){
memcpy(a[i],a[i-1],MAX*sizeof(int));
multiply(a[i],MAX,4*i-2);
divide(a[i],MAX,i+1);
}
for(i=0;i<MAX,a[n][i]==0;i++);
printf("%d",a[n][i++]);
for(;i<MAX;i++){
printf("%04d",a[n][i]);
}
for(i=2;i<=n;i++){
multiply(a[i],MAX,i);
}
printf("\n");
}
return 0;
}
#include<string.h>
#define MAX 100
#define BASE 10000
void multiply(int a[],int Max,int b){
int i,array=0;
for(i=Max-1;i>=0;i--){
array+=b*a[i];
a[i]=array%BASE;
array/=BASE;
}
}
void divide(int a[],int Max,int b){
int i,div=0;
for(i=0;i<Max;i++){
div=div*BASE+a[i];
a[i]=div/b;
div%=b;
}
}
int main(){
int a[101][MAX],i,n;
while(scanf("%d",&n)&&n!=-1){
memset(a[1],0,MAX*sizeof(int));
for(i=2,a[1][MAX-1]=1;i<101;i++){
memcpy(a[i],a[i-1],MAX*sizeof(int));
multiply(a[i],MAX,4*i-2);
divide(a[i],MAX,i+1);
}
for(i=0;i<MAX,a[n][i]==0;i++);
printf("%d",a[n][i++]);
for(;i<MAX;i++){
printf("%04d",a[n][i]);
}
for(i=2;i<=n;i++){
multiply(a[i],MAX,i);
}
printf("\n");
}
return 0;
}
1236
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
#define MAX 1001
struct node{
char no[25];
int grade;
}stu[MAX];
int cmp(const void *a,const void *b){
struct node *c=(struct node *)a;
struct node *d=(struct node *)b;
if(c->grade!=d->grade)
return d->grade>c->grade?1:-1;
else
return strcmp(c->no,d->no);
}
int main(){
int score[11],t_no;
int i,stu_num,t_num,grage,m,j,k,count;
while(scanf("%d",&stu_num),stu_num){
count=0;
scanf("%d%d",&t_num,&grage);
for(i=1;i<=t_num;i++){
scanf("%d",&score[i]);
}
for(i=0;i<stu_num;i++){
stu[i].grade=0;
scanf("%s",&stu[i].no);
scanf("%d",&m);
for(j=0;j<m;j++){
scanf("%d",&t_no);
stu[i].grade+=score[t_no];
}
if(stu[i].grade>=grage){
count++;
}
}
qsort(stu,stu_num,sizeof(stu[0]),cmp);
printf("%d\n",count);
if(count){
for(i=0;i<count;i++){
printf("%s %d\n",stu[i].no,stu[i].grade);
}
}
}
return 0;
}
#include<stdlib.h>
#include<string.h>
#define MAX 1001
struct node{
char no[25];
int grade;
}stu[MAX];
int cmp(const void *a,const void *b){
struct node *c=(struct node *)a;
struct node *d=(struct node *)b;
if(c->grade!=d->grade)
return d->grade>c->grade?1:-1;
else
return strcmp(c->no,d->no);
}
int main(){
int score[11],t_no;
int i,stu_num,t_num,grage,m,j,k,count;
while(scanf("%d",&stu_num),stu_num){
count=0;
scanf("%d%d",&t_num,&grage);
for(i=1;i<=t_num;i++){
scanf("%d",&score[i]);
}
for(i=0;i<stu_num;i++){
stu[i].grade=0;
scanf("%s",&stu[i].no);
scanf("%d",&m);
for(j=0;j<m;j++){
scanf("%d",&t_no);
stu[i].grade+=score[t_no];
}
if(stu[i].grade>=grage){
count++;
}
}
qsort(stu,stu_num,sizeof(stu[0]),cmp);
printf("%d\n",count);
if(count){
for(i=0;i<count;i++){
printf("%s %d\n",stu[i].no,stu[i].grade);
}
}
}
return 0;
}
1249
#include<stdio.h>
#define MAX 10005
int a[MAX];
int main(){
int t,n,i;
scanf("%d",&t);
while(t--){
scanf("%d",&n);
a[0]=2;
for(i=1;i<n;i++){
a[i]=a[i-1]+6*i;
}
printf("%d\n",a[n-1]);
}
return 0;
}
#define MAX 10005
int a[MAX];
int main(){
int t,n,i;
scanf("%d",&t);
while(t--){
scanf("%d",&n);
a[0]=2;
for(i=1;i<n;i++){
a[i]=a[i-1]+6*i;
}
printf("%d\n",a[n-1]);
}
return 0;
}
1266
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
int main(){
int n,i,len,m;
char num[10];
scanf("%d",&n);
while(n--){
//while(n--){
scanf("%s",num);
len=strlen(num);
if(num[0]=='-'){
printf("-");
}
for(i=len-1;i>=0;i--){
if(num[i]!='0')
break;
}
m=i;
for(i;i>=0;i--){
if(num[i]>='0'&&num[i]<='9'){
printf("%c",num[i]);
}
}
for(i=m+1;i<len;i++){
printf("0");
}
printf("\n");
// }
}
return 0;
}
#include<stdlib.h>
#include<string.h>
int main(){
int n,i,len,m;
char num[10];
scanf("%d",&n);
while(n--){
//while(n--){
scanf("%s",num);
len=strlen(num);
if(num[0]=='-'){
printf("-");
}
for(i=len-1;i>=0;i--){
if(num[i]!='0')
break;
}
m=i;
for(i;i>=0;i--){
if(num[i]>='0'&&num[i]<='9'){
printf("%c",num[i]);
}
}
for(i=m+1;i<len;i++){
printf("0");
}
printf("\n");
// }
}
return 0;
}
1301
/*#include<iostream>
using namespace std;
*/
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
using namespace std;
*/
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
#define MAX 99999
#define LEN 30
int dist[LEN];
int map[LEN][LEN];
int isvisited[LEN];
void init(int n){
int i,j;
for(i=0;i<=n;i++){
for(j=0;j<=n;j++){
map[i][j]=MAX;
}
}
}//prim
int prim(int n){
int i,j,min,pos,sum;
sum=0;
//memset(isvisited,false,sizeof(isvisited));
memset(isvisited,0,sizeof(isvisited));
for(i=1;i<=n;i++){
dist[i]=map[1][i];
}
//isvisited[1]=true;
isvisited[1]=1;
for(i=1;i<n;i++){
min=MAX;
for(j=1;j<=n;j++){
if(!isvisited[j]&&dist[j]<min){
min=dist[j];
pos=j;
}
}
sum+=min;
//isvisited[pos]=true;
isvisited[pos]=1;
for(j=1;j<=n;j++){
if(!isvisited[j]&&dist[j]>map[pos][j]){
dist[j]=map[pos][j];
}
}
}
return sum;
}
int main(){
int i,j,m,n,len,sum;
char start,end;
while(scanf("%d",&n),n){
/* if(n==0){
break;
}*/
init(n);
for(i=0;i<n-1;i++){
//cin>>start>>m;
getchar();
scanf("%c%d",&start,&m);
for(j=0;j<m;j++){
//cin>>end>>len;
getchar();
scanf("%c%d",&end,&len);
map[i+1][end-'A'+1]=len;
map[end-'A'+1][i+1]=len;
}
}
//cout<<prim(n)<<endl;
sum=prim(n);
printf("%d\n",sum);
}
return 0;
}
#define LEN 30
int dist[LEN];
int map[LEN][LEN];
int isvisited[LEN];
void init(int n){
int i,j;
for(i=0;i<=n;i++){
for(j=0;j<=n;j++){
map[i][j]=MAX;
}
}
}//prim
int prim(int n){
int i,j,min,pos,sum;
sum=0;
//memset(isvisited,false,sizeof(isvisited));
memset(isvisited,0,sizeof(isvisited));
for(i=1;i<=n;i++){
dist[i]=map[1][i];
}
//isvisited[1]=true;
isvisited[1]=1;
for(i=1;i<n;i++){
min=MAX;
for(j=1;j<=n;j++){
if(!isvisited[j]&&dist[j]<min){
min=dist[j];
pos=j;
}
}
sum+=min;
//isvisited[pos]=true;
isvisited[pos]=1;
for(j=1;j<=n;j++){
if(!isvisited[j]&&dist[j]>map[pos][j]){
dist[j]=map[pos][j];
}
}
}
return sum;
}
int main(){
int i,j,m,n,len,sum;
char start,end;
while(scanf("%d",&n),n){
/* if(n==0){
break;
}*/
init(n);
for(i=0;i<n-1;i++){
//cin>>start>>m;
getchar();
scanf("%c%d",&start,&m);
for(j=0;j<m;j++){
//cin>>end>>len;
getchar();
scanf("%c%d",&end,&len);
map[i+1][end-'A'+1]=len;
map[end-'A'+1][i+1]=len;
}
}
//cout<<prim(n)<<endl;
sum=prim(n);
printf("%d\n",sum);
}
return 0;
}
1337
#include<stdio.h>//Compilation Error
#include<math.h>
int main(){
int n,m,res;
scanf("%d",&n);
//while(!=EOF){
while(n--){
scanf("%d",&m);
res=(int)sqrt(m);
printf("%d\n",res);
}
// }
return 0;
}
#include<math.h>
int main(){
int n,m,res;
scanf("%d",&n);
//while(!=EOF){
while(n--){
scanf("%d",&m);
res=(int)sqrt(m);
printf("%d\n",res);
}
// }
return 0;
}
1425
#include<stdio.h>
#include<stdlib.h>
#define MAX 100000001
int a[MAX];
int cmp(const void *a,const void *b){
return *(int *)b-*(int *)a;
}
int main(){
int n,m,i;
while(scanf("%d%d",&n,&m)!=EOF){
for(i=0;i<n;i++){
scanf("%d",&a[i]);
}
qsort(a,n,sizeof(int),cmp);
printf("%d",a[0]);
for(i=1;i<m;i++){
printf(" %d",a[i]);
}
printf("\n");
}
return 0;
}
#include<stdlib.h>
#define MAX 100000001
int a[MAX];
int cmp(const void *a,const void *b){
return *(int *)b-*(int *)a;
}
int main(){
int n,m,i;
while(scanf("%d%d",&n,&m)!=EOF){
for(i=0;i<n;i++){
scanf("%d",&a[i]);
}
qsort(a,n,sizeof(int),cmp);
printf("%d",a[0]);
for(i=1;i<m;i++){
printf(" %d",a[i]);
}
printf("\n");
}
return 0;
}
1562
#include<stdio.h>
int main(){
int t,a,b,c,x;
scanf("%d",&t);
while(t--){
scanf("%d%d%d",&a,&b,&c);
for(x=1000;x<=9999;x++){
if((x%a==0)&&((x+1)%b==0)&&((x+2)%c==0)){
printf("%d\n",x);
break;
}
}
if(x>9999){
printf("Impossible\n");
}
}
return 0;
}
int main(){
int t,a,b,c,x;
scanf("%d",&t);
while(t--){
scanf("%d%d%d",&a,&b,&c);
for(x=1000;x<=9999;x++){
if((x%a==0)&&((x+1)%b==0)&&((x+2)%c==0)){
printf("%d\n",x);
break;
}
}
if(x>9999){
printf("Impossible\n");
}
}
return 0;
}
1563
#include<stdio.h>//Runtime Error(ACCESS_VIOLATION)
#include<string.h>
#define MAX 201
int a[MAX];
int main(){
int n,i,num;
while(scanf("%d",&n),n){
for(i=0;i<n;i++){
scanf("%d",&num);
a[num]++;
}
for(i=0;i<MAX;i++){
if(a[i]==1){
printf("%d\n",i);
break;
}
}
for(i=0;i<n;i++){
a[i]=0;
}
//memset();
}
return 0;
}
#include<string.h>
#define MAX 201
int a[MAX];
int main(){
int n,i,num;
while(scanf("%d",&n),n){
for(i=0;i<n;i++){
scanf("%d",&num);
a[num]++;
}
for(i=0;i<MAX;i++){
if(a[i]==1){
printf("%d\n",i);
break;
}
}
for(i=0;i<n;i++){
a[i]=0;
}
//memset();
}
return 0;
}
1570
#include<stdio.h>
int main(){
int t,i,n,m;
__int64 res;
char a;
scanf("%d",&t);
while(t--){
res=1;
getchar();
scanf("%c",&a);
scanf("%d%d",&n,&m);
if(a=='A'){
for(i=1;i<=n;i++){
res*=i;
}
for(i=1;i<=n-m;i++){
res/=i;
}
}else{
for(i=1;i<=n;i++){
res*=i;
}
for(i=1;i<=m;i++){
res/=i;
}
for(i=1;i<=n-m;i++){
res/=i;
}
}
printf("%I64d\n",res);
}
return 0;
}
int main(){
int t,i,n,m;
__int64 res;
char a;
scanf("%d",&t);
while(t--){
res=1;
getchar();
scanf("%c",&a);
scanf("%d%d",&n,&m);
if(a=='A'){
for(i=1;i<=n;i++){
res*=i;
}
for(i=1;i<=n-m;i++){
res/=i;
}
}else{
for(i=1;i<=n;i++){
res*=i;
}
for(i=1;i<=m;i++){
res/=i;
}
for(i=1;i<=n-m;i++){
res/=i;
}
}
printf("%I64d\n",res);
}
return 0;
}
1709
#include<stdio.h>
#include<stdlib.h>
#define MAX 10100
int cmp(const void *a,const void *b){
return *(int *)a-*(int *)b;
}
int c1[MAX];
int c2[MAX];
int b[MAX];
int main(){
int a[110];
int n,i,j,k,sum,t;
while(scanf("%d",&n)!=EOF){
sum=0;
for(i=0;i<n;i++){
scanf("%d",&a[i]);
sum+=a[i];
}
qsort(a,n,sizeof(a[0]),cmp);
for(i=0;i<MAX;i++){
c1[i]=c2[i]=0;
}
c1[0]=c2[a[0]]=1;
for(i=0;i<n;i++){
for(j=0;j<=sum;j++){
for(k=0;k+j<=sum&&k<=a[i];k+=a[i]){
c2[j+k]+=c1[j];
}
}
for(j=0;j<=sum;j++){
c1[j]=c2[j];
c2[j]=0;
}
}
for(i=sum;i>=2;i--){
if(c1[i]==0){
continue;
}
for(j=1;j<i;j++){
if(c1[j]==0)
continue;
c2[i-j]=1;
}
}
k=0;
for(i=0;i<=sum;i++){
if(c1[i]==0&&c2[i]==0){
b[k++]=i;
}
}
printf("%d\n",k);
for(i=0;i<k;i++){
printf(i<k-1?"%d ":"%d\n",b[i]);
}
}
return 0;
}
#include<stdlib.h>
#define MAX 10100
int cmp(const void *a,const void *b){
return *(int *)a-*(int *)b;
}
int c1[MAX];
int c2[MAX];
int b[MAX];
int main(){
int a[110];
int n,i,j,k,sum,t;
while(scanf("%d",&n)!=EOF){
sum=0;
for(i=0;i<n;i++){
scanf("%d",&a[i]);
sum+=a[i];
}
qsort(a,n,sizeof(a[0]),cmp);
for(i=0;i<MAX;i++){
c1[i]=c2[i]=0;
}
c1[0]=c2[a[0]]=1;
for(i=0;i<n;i++){
for(j=0;j<=sum;j++){
for(k=0;k+j<=sum&&k<=a[i];k+=a[i]){
c2[j+k]+=c1[j];
}
}
for(j=0;j<=sum;j++){
c1[j]=c2[j];
c2[j]=0;
}
}
for(i=sum;i>=2;i--){
if(c1[i]==0){
continue;
}
for(j=1;j<i;j++){
if(c1[j]==0)
continue;
c2[i-j]=1;
}
}
k=0;
for(i=0;i<=sum;i++){
if(c1[i]==0&&c2[i]==0){
b[k++]=i;
}
}
printf("%d\n",k);
for(i=0;i<k;i++){
printf(i<k-1?"%d ":"%d\n",b[i]);
}
}
return 0;
}
1720
#include<stdio.h>
int main(){
int a,b,sum;
while(scanf("%x%x",&a,&b)!=EOF){
sum=a+b;
printf("%d\n",sum);
}
return 0;
}
int main(){
int a,b,sum;
while(scanf("%x%x",&a,&b)!=EOF){
sum=a+b;
printf("%d\n",sum);
}
return 0;
}
1730
#include<stdio.h>
int main(){
int n,m,i,tom,jerry,res;
while(scanf("%d%d",&n,&m)!=EOF){
res=0;
for(i=0;i<n;i++){
scanf("%d%d",&tom,&jerry);
if(tom>jerry){
res^=tom-jerry-1;
}else{
res^=jerry-tom-1;
}
}
if(res){
printf("I WIN!\n");
}else{
printf("BAD LUCK!\n");
}
}
return 0;
}
int main(){
int n,m,i,tom,jerry,res;
while(scanf("%d%d",&n,&m)!=EOF){
res=0;
for(i=0;i<n;i++){
scanf("%d%d",&tom,&jerry);
if(tom>jerry){
res^=tom-jerry-1;
}else{
res^=jerry-tom-1;
}
}
if(res){
printf("I WIN!\n");
}else{
printf("BAD LUCK!\n");
}
}
return 0;
}
1849
#include<stdio.h>
int main(){
int m,i,res,n;
while(scanf("%d",&m),m){
res=0;
for(i=0;i<m;i++){
scanf("%d",&n);
res^=n;
}
if(res){
printf("Rabbit Win!\n");
}else{
printf("Grass Win!\n");
}
}
return 0;
}
int main(){
int m,i,res,n;
while(scanf("%d",&m),m){
res=0;
for(i=0;i<m;i++){
scanf("%d",&n);
res^=n;
}
if(res){
printf("Rabbit Win!\n");
}else{
printf("Grass Win!\n");
}
}
return 0;
}
1856
#include<stdio.h>
#include<stdlib.h>
#define MAX 10000001
struct node{
int a;
int b;
}boyNo[MAX];
int father[MAX];
int rank[MAX];
void Make_Set(int n){
int i;
for(i=0;i<=n;i++){
father[i]=i;
rank[i]=1;
}
}
int Find_Set(int x){
if(x!=father[x]){
father[x]=Find_Set(father[x]);
}
return father[x];
}
void Union(int x,int y){
x=Find_Set(x);
y=Find_Set(y);
if(x==y) return ;
if(rank[x]>rank[y]){
father[y]=father[x];
rank[x]+=rank[y];
}else{
father[x]=father[y];
rank[y]+=rank[x];
}
}
int main(){
int n,m,i,a,b,max,maxNum;
while(scanf("%d",&n)!=EOF){
max=0;
maxNum=0;
for(i=0;i<n;i++){
scanf("%d%d",&a,&b);
boyNo[i].a=a;
boyNo[i].b=b;
if(a>b){
if(max<a){
max=a;
}
}else{
if(max<b){
max=b;
}
}
}
Make_Set(max);
for(i=0;i<n;i++){
a=boyNo[i].a;
b=boyNo[i].b;
Union(a,b);
}
for(i=0;i<=max;i++){
m=rank[i];
if(maxNum<m){
maxNum=m;
}
}
printf("%d\n",maxNum);
}
return 0;
}
#include<stdlib.h>
#define MAX 10000001
struct node{
int a;
int b;
}boyNo[MAX];
int father[MAX];
int rank[MAX];
void Make_Set(int n){
int i;
for(i=0;i<=n;i++){
father[i]=i;
rank[i]=1;
}
}
int Find_Set(int x){
if(x!=father[x]){
father[x]=Find_Set(father[x]);
}
return father[x];
}
void Union(int x,int y){
x=Find_Set(x);
y=Find_Set(y);
if(x==y) return ;
if(rank[x]>rank[y]){
father[y]=father[x];
rank[x]+=rank[y];
}else{
father[x]=father[y];
rank[y]+=rank[x];
}
}
int main(){
int n,m,i,a,b,max,maxNum;
while(scanf("%d",&n)!=EOF){
max=0;
maxNum=0;
for(i=0;i<n;i++){
scanf("%d%d",&a,&b);
boyNo[i].a=a;
boyNo[i].b=b;
if(a>b){
if(max<a){
max=a;
}
}else{
if(max<b){
max=b;
}
}
}
Make_Set(max);
for(i=0;i<n;i++){
a=boyNo[i].a;
b=boyNo[i].b;
Union(a,b);
}
for(i=0;i<=max;i++){
m=rank[i];
if(maxNum<m){
maxNum=m;
}
}
printf("%d\n",maxNum);
}
return 0;
}
2043
/*可以直接调用库函数判断是否为数字或字母
*/
#include<stdio.h>
#include<string.h>
#define MAX 55
char sign[]={
" ~!@#$%^"
};
int main(){
int m,len,num,i,j,flag;
char str[MAX];
scanf("%d",&m);
while(m--){
num=0;
flag=0;
scanf("%s",str);
len=strlen(str);
if(len>=8&&len<=16){
for(i=0;i<len;i++){
if(str[i]>='A'&&str[i]<='Z'){
num++;
break;
}
}
for(i=0;i<len;i++){
if(str[i]>='a'&&str[i]<='z'){
num++;
break;
}
}
for(i=0;i<len;i++){
if(str[i]>='0'&&str[i]<='9'){
num++;
break;
}
}
if(num<3)
for(i=0;i<len;i++){
for(j=0;j<strlen(sign);j++){
if(str[i]==sign[j]){
num++;
flag++;
break;
}
}
if(flag)
break;
}
if(num>=3){
printf("YES\n");
}else{
printf("NO\n");
}
}else{
printf("NO\n");
}
}
return 0;
}
*/
#include<stdio.h>
#include<string.h>
#define MAX 55
char sign[]={
" ~!@#$%^"
};
int main(){
int m,len,num,i,j,flag;
char str[MAX];
scanf("%d",&m);
while(m--){
num=0;
flag=0;
scanf("%s",str);
len=strlen(str);
if(len>=8&&len<=16){
for(i=0;i<len;i++){
if(str[i]>='A'&&str[i]<='Z'){
num++;
break;
}
}
for(i=0;i<len;i++){
if(str[i]>='a'&&str[i]<='z'){
num++;
break;
}
}
for(i=0;i<len;i++){
if(str[i]>='0'&&str[i]<='9'){
num++;
break;
}
}
if(num<3)
for(i=0;i<len;i++){
for(j=0;j<strlen(sign);j++){
if(str[i]==sign[j]){
num++;
flag++;
break;
}
}
if(flag)
break;
}
if(num>=3){
printf("YES\n");
}else{
printf("NO\n");
}
}else{
printf("NO\n");
}
}
return 0;
}
2050
#include<stdio.h>
#define MAX 10005
int a[MAX];
int main(){
int c,n,i;
scanf("%d",&c);
while(c--){
scanf("%d",&n);
a[0]=2;
for(i=1;i<n;i++){
a[i]=a[i-1]+4*i+1;
}
printf("%d\n",a[n-1]);
}
return 0;
}
#define MAX 10005
int a[MAX];
int main(){
int c,n,i;
scanf("%d",&c);
while(c--){
scanf("%d",&n);
a[0]=2;
for(i=1;i<n;i++){
a[i]=a[i-1]+4*i+1;
}
printf("%d\n",a[n-1]);
}
return 0;
}
2057
#include<stdio.h>
int main(){
__int64 sum,a,b;
while(scanf("%I64X%I64X",&a,&b)!=EOF){
sum=a+b;
if(sum<0){
printf("-%I64X\n",-sum);//%I64X:以16进制无符号形式输出
}else{
printf("%I64X\n",sum);
}
}
return 0;
}
int main(){
__int64 sum,a,b;
while(scanf("%I64X%I64X",&a,&b)!=EOF){
sum=a+b;
if(sum<0){
printf("-%I64X\n",-sum);//%I64X:以16进制无符号形式输出
}else{
printf("%I64X\n",sum);
}
}
return 0;
}
2079
#include<stdio.h>
#define MAX 51
int a[MAX],b[MAX];
int main(){
int score[50],course[50];
int i,j,k,sum,num;
int t;
scanf("%d",&t);
while(t--){
scanf("%d%d",&sum,&num);
for(i=0;i<num;i++){
scanf("%d%d",&score[i],&course[i]);
}
for(i=0;i<MAX;i++)
a[i]=b[i]=0;
a[0]=1;
for(i=0;i<num;i++){
for(j=0;j<MAX;j++){
if(a[j]){
for(k=0;k+j<MAX&&k<=score[i]*course[i];k+=score[i]){
b[j+k]+=a[j];
}
}
}
for(j=0;j<MAX;j++){
a[j]=b[j];
b[j]=0;
}
}
printf("%d\n",a[sum]);
}
return 0;
}
#define MAX 51
int a[MAX],b[MAX];
int main(){
int score[50],course[50];
int i,j,k,sum,num;
int t;
scanf("%d",&t);
while(t--){
scanf("%d%d",&sum,&num);
for(i=0;i<num;i++){
scanf("%d%d",&score[i],&course[i]);
}
for(i=0;i<MAX;i++)
a[i]=b[i]=0;
a[0]=1;
for(i=0;i<num;i++){
for(j=0;j<MAX;j++){
if(a[j]){
for(k=0;k+j<MAX&&k<=score[i]*course[i];k+=score[i]){
b[j+k]+=a[j];
}
}
}
for(j=0;j<MAX;j++){
a[j]=b[j];
b[j]=0;
}
}
printf("%d\n",a[sum]);
}
return 0;
}
2081
#include<stdio.h>
#define MAX 15
int main(){
int i,j,n;
char a[MAX];
while(scanf("%d",&n)!=EOF){
for(i=0;i<n;i++){
scanf("%s",a);
printf("6");
for(j=6;j<11;j++){
printf("%c",a[j]);
}
printf("\n");
}
}
return 0;
}
#define MAX 15
int main(){
int i,j,n;
char a[MAX];
while(scanf("%d",&n)!=EOF){
for(i=0;i<n;i++){
scanf("%s",a);
printf("6");
for(j=6;j<11;j++){
printf("%c",a[j]);
}
printf("\n");
}
}
return 0;
}
2082
#include<stdio.h>
int main(){
int t,i,j,k,y,sum,x;
int num[27];
int c1[55],c2[55];
while(scanf("%d",&t)!=EOF){
while(t--){
for(i=1;i<=26;i++){
scanf("%d",&num[i]);
}
for(i=0;i<55;i++){
c1[i]=0;
c2[i]=0;
}
for(i=1;i<=26;i++){
if(num[i]){
for(j=0;j<=num[i]*i&&j<=50;j+=i){
c1[j]=1;
}
y=i;
break;
}
}
for(i=y+1;i<=26;i++){
for(j=0;j<=50;j++){
for(k=0;k+j<=50&&k<=num[i]*i;k+=i){
c2[j+k]+=c1[j];
}
}
for(j=0;j<=50;j++){
c1[j]=c2[j];
c2[j]=0;
}
}
sum=0;
for(i=1;i<=50;i++){
sum+=c1[i];
}
printf("%d\n",sum);
}
}
return 0;
}
int main(){
int t,i,j,k,y,sum,x;
int num[27];
int c1[55],c2[55];
while(scanf("%d",&t)!=EOF){
while(t--){
for(i=1;i<=26;i++){
scanf("%d",&num[i]);
}
for(i=0;i<55;i++){
c1[i]=0;
c2[i]=0;
}
for(i=1;i<=26;i++){
if(num[i]){
for(j=0;j<=num[i]*i&&j<=50;j+=i){
c1[j]=1;
}
y=i;
break;
}
}
for(i=y+1;i<=26;i++){
for(j=0;j<=50;j++){
for(k=0;k+j<=50&&k<=num[i]*i;k+=i){
c2[j+k]+=c1[j];
}
}
for(j=0;j<=50;j++){
c1[j]=c2[j];
c2[j]=0;
}
}
sum=0;
for(i=1;i<=50;i++){
sum+=c1[i];
}
printf("%d\n",sum);
}
}
return 0;
}
2083
#include<stdio.h>//Time Limit Exceeded
#include<stdlib.h>
#define MAX 10001
int a[MAX];
int cmp(const void *a,const void *b){
return *(int *)a-*(int *)b;
}
int main(){
int n,m,sum,i;
scanf("%d",&m);
//while(){
while(m--){
sum=0;
scanf("%d",&n);
for(i=0;i<n;i++){
scanf("%d",&a[i]);
}
qsort(a,n,sizeof(int),cmp);
for(i=0;i<n/2;i++){
sum+=(a[n/2]-a[i]);
}
for(i=n/2+1;i<n;i++){
sum+=(a[i]-a[n/2]);
}
printf("%d\n",sum);
}
//}
return 0;
}
#include<stdlib.h>
#define MAX 10001
int a[MAX];
int cmp(const void *a,const void *b){
return *(int *)a-*(int *)b;
}
int main(){
int n,m,sum,i;
scanf("%d",&m);
//while(){
while(m--){
sum=0;
scanf("%d",&n);
for(i=0;i<n;i++){
scanf("%d",&a[i]);
}
qsort(a,n,sizeof(int),cmp);
for(i=0;i<n/2;i++){
sum+=(a[n/2]-a[i]);
}
for(i=n/2+1;i<n;i++){
sum+=(a[i]-a[n/2]);
}
printf("%d\n",sum);
}
//}
return 0;
}
2148
#include<stdio.h>
#define MAX 101
int grade[MAX];
int main(){
int i,t,n,k,count;
scanf("%d",&t);
while(t--){
count=0;
scanf("%d%d",&n,&k);
for(i=1;i<=n;i++){
scanf("%d",&grade[i]);
}
for(i=1;i<=n;i++){
if(grade[i]>grade[k]){
count++;
}
}
printf("%d\n",count);
}
return 0;
}
#define MAX 101
int grade[MAX];
int main(){
int i,t,n,k,count;
scanf("%d",&t);
while(t--){
count=0;
scanf("%d%d",&n,&k);
for(i=1;i<=n;i++){
scanf("%d",&grade[i]);
}
for(i=1;i<=n;i++){
if(grade[i]>grade[k]){
count++;
}
}
printf("%d\n",count);
}
return 0;
}
2152
#include<stdio.h>
#define MAX 101
int a[MAX],b[MAX];
int low[MAX],high[MAX];
int main(){
int n,m,i,j,k;
while(scanf("%d%d",&n,&m)!=EOF){
for(i=1;i<=n;i++){
scanf("%d%d",&low[i],&high[i]);
}
for(i=0;i<MAX;i++){
a[i]=b[i]=0;
}
a[0]=1;
for(i=1;i<=n;i++){
for(j=0;j<MAX;j++){
if(a[j])
for(k=low[i];k+j<MAX&&k<=high[i];k++){
b[j+k]+=a[j];
}
}
for(j=0;j<MAX;j++){
a[j]=b[j];
b[j]=0;
}
}
printf("%d\n",a[m]);
}
return 0;
}
#define MAX 101
int a[MAX],b[MAX];
int low[MAX],high[MAX];
int main(){
int n,m,i,j,k;
while(scanf("%d%d",&n,&m)!=EOF){
for(i=1;i<=n;i++){
scanf("%d%d",&low[i],&high[i]);
}
for(i=0;i<MAX;i++){
a[i]=b[i]=0;
}
a[0]=1;
for(i=1;i<=n;i++){
for(j=0;j<MAX;j++){
if(a[j])
for(k=low[i];k+j<MAX&&k<=high[i];k++){
b[j+k]+=a[j];
}
}
for(j=0;j<MAX;j++){
a[j]=b[j];
b[j]=0;
}
}
printf("%d\n",a[m]);
}
return 0;
}
2153
#include<stdio.h>
#include<string.h>
#define MAX 11
int a[MAX][MAX];
int main(){
int n,i,j;
while(scanf("%d",&n)!=EOF){
memset(a,0,sizeof(a));
for(i=1;i<=n;i++){
a[1][i]=i;
}
for(i=2;i<=n;i++){
a[i][n]=n+i-1;
}
for(i=1;i<n;i++){
a[n][i]=3*n-i-1;
}
for(i=2;i<n;i++){
a[i][1]=4*(n-1)-i+2;
}
for(i=1;i<=n;i++){
for(j=1;j<=n;j++){
if(a[i][j]){
printf("%3d",a[i][j]);
}else{
printf(" ");
}
}
printf("\n");
}
}
}
2156
#include<string.h>
#define MAX 11
int a[MAX][MAX];
int main(){
int n,i,j;
while(scanf("%d",&n)!=EOF){
memset(a,0,sizeof(a));
for(i=1;i<=n;i++){
a[1][i]=i;
}
for(i=2;i<=n;i++){
a[i][n]=n+i-1;
}
for(i=1;i<n;i++){
a[n][i]=3*n-i-1;
}
for(i=2;i<n;i++){
a[i][1]=4*(n-1)-i+2;
}
for(i=1;i<=n;i++){
for(j=1;j<=n;j++){
if(a[i][j]){
printf("%3d",a[i][j]);
}else{
printf(" ");
}
}
printf("\n");
}
}
}
2156
#include<stdio.h>
#define MAX 50000
int main(){
int n;
double sum,i;
while(scanf("%d",&n),n){
sum=0;
for(i=2;i<=n;i++){
sum+=(n-i+1)/i;
}
sum*=2;
sum+=n;
printf("%.2lf\n",sum);
}
return 0;
}
#define MAX 50000
int main(){
int n;
double sum,i;
while(scanf("%d",&n),n){
sum=0;
for(i=2;i<=n;i++){
sum+=(n-i+1)/i;
}
sum*=2;
sum+=n;
printf("%.2lf\n",sum);
}
return 0;
}
2160
#include<stdio.h>
#define MAX 25
int a[MAX];
int main(){
int n,i,t;
scanf("%d",&t);
while(t--){
a[0]=1;
a[1]=2;
scanf("%d",&n);
for(i=2;i<n;i++){
a[i]=a[i-1]+a[i-2];
}
printf("%d\n",a[n-1]);
}
return 0;
}
#define MAX 25
int a[MAX];
int main(){
int n,i,t;
scanf("%d",&t);
while(t--){
a[0]=1;
a[1]=2;
scanf("%d",&n);
for(i=2;i<n;i++){
a[i]=a[i-1]+a[i-2];
}
printf("%d\n",a[n-1]);
}
return 0;
}
2163
#include<stdio.h>
#include<string.h>
#define MAX 55
int main(){
int i,j,count=0,len;
char a[MAX];
while(scanf("%s",a)){
count++;
len=strlen(a);
if(!strcmp(a,"STOP")){
break;
}
for(i=0,j=len-1;i<=j;i++,j--){
if(a[i]!=a[j]){
break;
}
}
if(i<=j){
printf("#%d: NO\n",count);
}else{
printf("#%d: YES\n",count);
}
}
return 0;
}
#include<string.h>
#define MAX 55
int main(){
int i,j,count=0,len;
char a[MAX];
while(scanf("%s",a)){
count++;
len=strlen(a);
if(!strcmp(a,"STOP")){
break;
}
for(i=0,j=len-1;i<=j;i++,j--){
if(a[i]!=a[j]){
break;
}
}
if(i<=j){
printf("#%d: NO\n",count);
}else{
printf("#%d: YES\n",count);
}
}
return 0;
}
2201
#include<stdio.h>//Output Limit Exceeded
int main(){
int n,m;
double res;
while(scanf("%d%d",&n,&m)!=EOF){
res=1.0/n;
printf("%.2lf\n",res);
}
}
int main(){
int n,m;
double res;
while(scanf("%d%d",&n,&m)!=EOF){
res=1.0/n;
printf("%.2lf\n",res);
}
}
2309
#include<stdio.h>
#include<stdlib.h>
#define MAX 101
int score[MAX];
int cmp(const void *a,const void *b){
return *(int *)a-*(int *)b;
}
#include<stdlib.h>
#define MAX 101
int score[MAX];
int cmp(const void *a,const void *b){
return *(int *)a-*(int *)b;
}
int main(){
int n,i,sum;
double avg;
while(scanf("%d",&n),n){
i=0;
sum=0;
while(i<n){
scanf("%d",&score[i]);
i++;
}
qsort(score,n,sizeof(score[0]),cmp);
for(i=1;i<n-1;i++){
sum+=score[i];
}
avg=sum/(n-2);
printf("%d\n",(int)avg);//printf("%d\n",avg);
}
return 0;
}
int n,i,sum;
double avg;
while(scanf("%d",&n),n){
i=0;
sum=0;
while(i<n){
scanf("%d",&score[i]);
i++;
}
qsort(score,n,sizeof(score[0]),cmp);
for(i=1;i<n-1;i++){
sum+=score[i];
}
avg=sum/(n-2);
printf("%d\n",(int)avg);//printf("%d\n",avg);
}
return 0;
}
2501
#include<stdio.h>
#define MAX 35
int a[MAX];
int main(){
int t,n,i;
a[2]=3;
a[3]=5;
for(i=4;i<=30;i++){
a[i]=a[i-1]+2*a[i-2];
}
scanf("%d",&t);
while(t--){
scanf("%d",&n);
printf("%d\n",a[n]);
}
return 0;
}
#define MAX 35
int a[MAX];
int main(){
int t,n,i;
a[2]=3;
a[3]=5;
for(i=4;i<=30;i++){
a[i]=a[i-1]+2*a[i-2];
}
scanf("%d",&t);
while(t--){
scanf("%d",&n);
printf("%d\n",a[n]);
}
return 0;
}
2523
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
#define MAX 5050
int num[MAX],res[MAX];
int cmp(const void *a,const void *b){
return *(int *)a-*(int *)b;
}
int main(){
int c,n,k,j,i,x,count,y;
scanf("%d",&c);
while(c--){
count=0;
memset(res,0,sizeof(res));
scanf("%d%d",&n,&k);
y=n*(n-1)/2;
for(i=0;i<n;i++){
scanf("%d",&num[i]);
}
qsort(num,n,sizeof(num[0]),cmp);
for(i=0;i<n;i++){
for(j=i+1;j<n;j++){
x=num[j]-num[i];
res[x]=1;
}
}
for(i=0;i<MAX;i++){
if(res[i])
count++;
if(count==k){
printf("%d\n",i);
break;
}
}
}
return 0;
}
#include<stdlib.h>
#include<string.h>
#define MAX 5050
int num[MAX],res[MAX];
int cmp(const void *a,const void *b){
return *(int *)a-*(int *)b;
}
int main(){
int c,n,k,j,i,x,count,y;
scanf("%d",&c);
while(c--){
count=0;
memset(res,0,sizeof(res));
scanf("%d%d",&n,&k);
y=n*(n-1)/2;
for(i=0;i<n;i++){
scanf("%d",&num[i]);
}
qsort(num,n,sizeof(num[0]),cmp);
for(i=0;i<n;i++){
for(j=i+1;j<n;j++){
x=num[j]-num[i];
res[x]=1;
}
}
for(i=0;i<MAX;i++){
if(res[i])
count++;
if(count==k){
printf("%d\n",i);
break;
}
}
}
return 0;
}
2548
#include<stdio.h>
int main(){
int t;
double u,v,w,l,d;
scanf("%d",&t);
while(t--){
d=0;
scanf("%lf%lf%lf%lf",&u,&v,&w,&l);
d=l/(u+v)*w;
printf("%.3lf\n",d);
}
return 0;
}
int main(){
int t;
double u,v,w,l,d;
scanf("%d",&t);
while(t--){
d=0;
scanf("%lf%lf%lf%lf",&u,&v,&w,&l);
d=l/(u+v)*w;
printf("%.3lf\n",d);
}
return 0;
}
2560
#include<stdio.h>
int main(){
int t,n,m,i,j,count,num;
scanf("%d",&t);
while(t--){
count=0;
scanf("%d%d",&n,&m);
for(i=0;i<n;i++){
for(j=0;j<m;j++){
scanf("%d",&num);
if(num){
count++;
}
}
}
printf("%d\n",count);
}
return 0;
}
int main(){
int t,n,m,i,j,count,num;
scanf("%d",&t);
while(t--){
count=0;
scanf("%d%d",&n,&m);
for(i=0;i<n;i++){
for(j=0;j<m;j++){
scanf("%d",&num);
if(num){
count++;
}
}
}
printf("%d\n",count);
}
return 0;
}
2561
#include<stdio.h>
#include<stdlib.h>
#define MAX 11
int cmp(const void *a,const void * b){
return *(int *)a-*(int *)b;
}
int main(){
int c,i,n,num[MAX];
scanf("%d",&c);
while(c--){
scanf("%d",&n);
for(i=0;i<n;i++){
scanf("%d",&num[i]);
}
qsort(num,n,sizeof(int),cmp);
printf("%d\n",num[1]);
}
return 0;
}
#include<stdlib.h>
#define MAX 11
int cmp(const void *a,const void * b){
return *(int *)a-*(int *)b;
}
int main(){
int c,i,n,num[MAX];
scanf("%d",&c);
while(c--){
scanf("%d",&n);
for(i=0;i<n;i++){
scanf("%d",&num[i]);
}
qsort(num,n,sizeof(int),cmp);
printf("%d\n",num[1]);
}
return 0;
}
2566
//暴力
#include<stdio.h>
int main(){
int k,n,m,one,two,five,i,j,t,count;
scanf("%d",&t);
while(t--){
one=two=five=0;
count=0;
scanf("%d%d",&n,&m);
one=m;
two=m/2;
five=m/5;
for(i=0;i<=five;i++){
for(j=0;j<=two;j++){
for(k=0;k<=one;k++){
if((i*5+j*2+k==m)&&(i+j+k==n))
count++;
}
}
}
printf("%d\n",count);
}
return 0;
}
#include<stdio.h>
int main(){
int k,n,m,one,two,five,i,j,t,count;
scanf("%d",&t);
while(t--){
one=two=five=0;
count=0;
scanf("%d%d",&n,&m);
one=m;
two=m/2;
five=m/5;
for(i=0;i<=five;i++){
for(j=0;j<=two;j++){
for(k=0;k<=one;k++){
if((i*5+j*2+k==m)&&(i+j+k==n))
count++;
}
}
}
printf("%d\n",count);
}
return 0;
}
2568
#include<stdio.h>
int main(){
int c,n,num;
scanf("%d",&c);
while(c--){
num=0;
scanf("%d",&n);
while(n){
if(n%2){
num++;
n--;
}else{
n/=2;
}
}
printf("%d\n",num);
}
return 0;
}
int main(){
int c,n,num;
scanf("%d",&c);
while(c--){
num=0;
scanf("%d",&n);
while(n){
if(n%2){
num++;
n--;
}else{
n/=2;
}
}
printf("%d\n",num);
}
return 0;
}
2818
#include<stdio.h>
#include<string.h>
#define MAX 30002
int father[MAX];
int up[MAX];
int down[MAX];
int Find_Set(int x){
int t=father[x];
if(t!=x){
father[x]=Find_Set(t);
up[x]+=up[t];
}
return father[x];
}
void Union(int x,int y){
x=Find_Set(x);
y=Find_Set(y);
if(x!=y){
father[y]=x;
up[y]=down[x];
down[x]+=down[y];
}
}
int main(){
int i,n,x,y;
char s;
for(i=0;i<MAX;i++){
father[i]=i;
up[i]=0;
down[i]=1;
}
scanf("%d",&n);
while(n--){
getchar();
scanf("%c",&s);
if(s=='M'){
scanf("%d%d",&x,&y);
Union(x,y);
}else{
scanf("%d",&x);
y=Find_Set(x);
printf("%d\n",down[y]-up[x]-1);
}
}
return 0;
}
#include<string.h>
#define MAX 30002
int father[MAX];
int up[MAX];
int down[MAX];
int Find_Set(int x){
int t=father[x];
if(t!=x){
father[x]=Find_Set(t);
up[x]+=up[t];
}
return father[x];
}
void Union(int x,int y){
x=Find_Set(x);
y=Find_Set(y);
if(x!=y){
father[y]=x;
up[y]=down[x];
down[x]+=down[y];
}
}
int main(){
int i,n,x,y;
char s;
for(i=0;i<MAX;i++){
father[i]=i;
up[i]=0;
down[i]=1;
}
scanf("%d",&n);
while(n--){
getchar();
scanf("%c",&s);
if(s=='M'){
scanf("%d%d",&x,&y);
Union(x,y);
}else{
scanf("%d",&x);
y=Find_Set(x);
printf("%d\n",down[y]-up[x]-1);
}
}
return 0;
}