zoukankan      html  css  js  c++  java
  • 【ACM】航电oj 2000-2025

    航电oj 2000-2025 正在更新…

    2000

    2000

    #include <stdio.h>
    int main(int argc, char *argv[])
    {
    	char a,b,c; 
    	while(~scanf(" %c%c%c",&a,&b,&c))
    	{
    		if(a>b&&b>c) printf("%c %c %c
    ",c,b,a);
    		else if(a>c&&c>b||a==c&&c>b) printf("%c %c %c
    ",b,c,a);
    		else if(b>c&&c>a||b==c&&c>a) printf("%c %c %c
    ",a,c,b);
    		else if(b>a&&a>c||b==a&&a>c) printf("%c %c %c
    ",c,a,b);
    		else if(c>a&&a>b||c==a&&a>b) printf("%c %c %c
    ",b,a,c);
    		else if(c>b&&b>a||c==b&&b>a) printf("%c %c %c
    ",a,b,c);
    		else if(c==b&&c==a) printf("%c %c %c",a,b,c);
    	} 
    	return 0;
    }
    
    

    ~scanf(" %c%c%c",&a,&b,&c) 记住要加空格,作用是读出换行符。getchar()也能实现,只需在每个循环的最后加上就行。

    2001

    2001

    #include <stdio.h>
    #include <math.h>
    int main(){
    	double x1,x2,y1,y2;
    		while(~scanf("%lf %lf %lf %lf",&x1,&y1,&x2,&y2))
    		{
    			printf("%.2f
    ",sqrt((x1-x2)*(x1-x2)+(y1-y2)*(y1-y2)));
    		}
    		
    	return 0;
    }
    

    ~scanf() 只有 返回值为EOF 的时候 ~EOF 才能为0 其余 都不会。或者用scanf()!=EOF

    2002

    2002

    #include <stdio.h>
    #define PI 3.1415927 
    int main(int argc, char *argv[])
    {
    	double r;
    	while(~scanf(" %lf",&r))
    	{
    		printf("%.3f
    ",4*PI*r*r*r/3);
    	}
    	return 0;
    }
    

    要先 ×/,不然答案会错。不能直接4/3

    2003

    2003

    #include <stdio.h>
    int main(int argc, char *argv[])
    {
    	double num;
    	while(~scanf(" %lf",&num)){
    		if(num<0) num=num-2*num;
    		printf("%.2lf
    ",num);
    	}
    	return 0;
    }
    
    

    2004

    2004

    #include <stdio.h>
    int main(int argc, char *argv[])
    {
    	int t;
    	while(~scanf(" %d",&t))
    	{
    		if(t>=90&&t<=100c) printf("A
    ");
    		else if(t>=80&&t<=89) printf("B
    ");
    		else if(t>=70&&t<=79) printf("C
    ");
    		else if(t>=60&&t<=69) printf("D
    ");
    		else if(t>=0&&t<=59) printf("E
    ");
    		else printf("Score is error!
    ");
    	}
    	return 0;
    }
    

    2005

    #include <stdio.h>
    int main(int argc, char *argv[])
    {
    	int YYYY,MM,DD;
    	while(~scanf(" %d/%d/%d",&YYYY,&MM,&DD))
    	{
    		int sum;
    		int arr[12][2]={
    		{1,31},{2,28},{3,31},{4,30},{5,31},{6,30},{7,31},{8,31},{9,30},{10,31},{11,30},{12,31}
    	};
    		if(YYYY%4==0) arr[1][1]=29;
    		for(int i=0;i<MM-1;i++)
    		{
    			sum=sum+arr[MM][1];
    		}
    		sum=sum+DD;
    		printf("%d
    ",sum);
    	}
    	return 0;
    }
    

    2006

    #include <stdio.h>
    int main(int argc, char *argv[])
    {
    	int n,a;
    
    	while(~scanf("%d",&n))
    	{
    		int sum=1;
    		for(int i=0;i<n;i++)
    		{
    			scanf("%d",&a);
    			if(a%2!=0||a%2==1) sum=sum*a;
    		}
    		printf("%d
    ",sum);
    		getchar();
    	}
    	return 0;
    }
    

    奇数:余2不为0或余2为1

    2007

    #include <stdio.h>
    int main(int argc, char *argv[])
    {
    	int n,m;
    	while(~scanf("%d %d",&n,&m))
    	{
    		int temp;
    		//记住一定要考虑符号交换顺序 
    		if(n>m){
    			temp=n;
    			n=m;
    			m=temp;
    		}
    		int sum1=0,sum2=0;
    		for(int i=n;i<=m;i++)
    		{
    			if(i%2==1) sum1+=i*i*i;
    			else sum2+=i*i;
    		}
    		printf("%d %d
    ",sum2,sum1);
    		getchar();
    	}
    	return 0;
    }
    

    2008

    #include <stdio.h>
    int main(int argc, char *argv[])
    {
    	int n;
    	while(~scanf("%d",&n))
    	{
    		if(n==0) break;
    		int a=0,b=0,c=0;
    		double x;
    		for(int i=0;i<n;i++)
    		{
    			scanf("%lf",&x);			
    			if(x<0) a++;
    			else if(x==0) b++;
    			else if(x>0) c++;
    		 } 
    		printf("%d %d %d
    ",a,b,c);
    	}
    	return 0;
    }
    

    2009

    #include <stdio.h>
    #include <math.h>
    int main(int argc, char *argv[])
    {
    	int n,m;
    	while(~scanf("%d %d",&n,&m))
    	{
    		double sum=n;
    		double num=n;
    		for(int i=0;i<m-1;i++)
    		{
    			num=sqrt(num);
    			sum=sum+num;
    		}
    		printf("%.2f
    ",sum);
    	}
    	return 0;
    }
    

    2010 有点问题

    #include <stdio.h>
    #include <math.h>
    int main(int argc, char *argv[])
    {
    	int n,m;
    	while(~scanf("%d %d",&n,&m))
    	{
    		int temp=0;
    		int count=0;
    		int arr[900]={0};
    		for(int i=n;i<=m;i++)
    		{
    			int sum=0;
    			int i0=i;
    			for(int j=0;j<3;j++)
    			{
    				temp=i0%10;
    				sum+=pow(temp,3);
    				i0=i0/10;
    			}
    			if(sum==i) 
    			{
    				arr[count++]=i;	
    			}
    		}
    		if(count==0) printf("no");
    		else {
    			for(int i=0;i<count-1;i++)
    			{
    				printf("%d ",arr[i]);
    			}
    			printf("%d
    ",arr[count-1]);
    		}
    		getchar();
    	}
    	return 0;
    }
    
    

    2011

    #include <stdio.h>
    #include <math.h>
    int main(int argc, char *argv[])
    {
    	int m;
    	scanf("%d",&m);
    	double n;
    	for(int i=0;i<m;i++)//输入几个实例 
    	{
    		double sum=0;
    		scanf("%lf",&n);
    		for(int j=1;j<=n;j++)
    		{
    			sum=sum+(1.0/j)*pow(-1,j+1);
    		 } 
    		printf("%.2f
    ",sum);
    	}
    	return 0;
    }
    

    2012

    #include <stdio.h>
    #include <math.h>
    int Sushu(int a)
    {
    	int b=0;
    	for(int i=2;i<a/2;i++)
    	{
    		if(a%i==0)
    			b++;
    	}
    	if(b==0)
    		return 1;
    	else
    		return 0;
    }
    int main(int argc, char *argv[])
    {
    	int n;
    	int x,y;
    	while(~scanf("%d %d",&x,&y)){
    		if(x==0&&y==0)
    		{
    			continue;
    		}
    		else{
    			int temp=x;
    			if(x>y){
    				x=y;
    				y=temp;
    			} 
    			int count=0;
    			for(int i=x;i<=y;i++)
    			{
    				if(Sushu(i*i+i+41))
    				{
    					count++;
    				}
    			}
    			if(count==(y-x+1)) printf("OK
    ");
    			else printf("Sorry
    ");
    		}
    		getchar();	
    	}
    
    	return 0;
    }
    

    2013

    #include <stdio.h>
    #include <math.h>
    int main(int argc, char *argv[])
    {
    	int n;
    	while(~scanf("%d",&n))
    	{
    		int sum=1;
    		for(int i=0;i<n-1;i++)
    		{
    			sum=(sum+1)*2;
    		}
    		printf("%d
    ",sum);		
    	}
    		return 0;
    }
    

    2014

    #include <stdio.h>
    #include <math.h>
    int main(int argc, char *argv[])
    {
    	int n;
    	while(~scanf(" %d",&n))
    	{
    		getchar();
    		double sum=0;
    		int max=0,min=0,grade=0;
    		scanf("%d",&grade);
    		sum+=grade;
    		max=grade;
    		min=grade;
    		for(int i=0;i<n-1;i++)
    		{
    			int temp;
    			scanf("%d",&grade);
    			sum+=grade;
    			if(max<grade) max=grade;
    			if(min>grade) min=grade;
    		}	
    		sum=sum-max-min;
    		printf("%.2f
    ",sum/(n-2));
    	}
    		return 0;
    }
    

    2015

    #include <stdio.h>
    #include <math.h>
    int main(int argc, char *argv[])
    {
    	int n,m;
    	while(~scanf(" %d %d",&n,&m))
    	{
    		int num=0,sum=0,count=0;
    		for(int i=1;i<=n;i++)
    		{
    			num+=2;
    			sum=sum+num;
    			count++;
    			if(i%m==0||i==n)
    			{
    				printf("%d",sum/count); 
    				sum=0;
    				count=0;
    				if(i!=n) printf(" ");	
    			} 
    			 
    		}
    		printf("
    ");
    	}
    		return 0;
    }
    

    2016

    #include <stdio.h>
    #include <math.h>
    int main(int argc, char *argv[])
    {
    	int n,m;
    	while(~scanf(" %d",&n))
    	{
    		if(n==0) continue;
    		int a[100]; 
    		int min,num,target;
    		scanf("%d",&num);
    		min=num;
    		a[0]=num;
    		target=0;
    		for(int i=1;i<n;i++)
    		{
    			scanf("%d",&num);
    			if(num<min) 
    			{
    				min=num;
    				target=i;
    			}
    			a[i]=num;
    		}
    		a[target]=a[0];
    		a[0]=min;
    		for(int i=0;i<n;i++)
    		{
    			if(i!=n-1) printf("%d ",a[i]);
    			else printf("%d",a[i]);
    		}
    			printf("
    ");
    		}
    	
    		return 0;
    }
    

    2017

    #include <stdio.h>
    #include <math.h>
    int main(int argc, char *argv[])
    {
    	int n,m;
    	scanf(" %d",&n);
    	for(int i=0;i<n;i++)
    	{
    		char s[100]={''};
    		int count=0;
    		scanf(" %s",&s);
    		for(int j=0;s[j]!='';j++)
    		{
    			if(s[j]>=48&&s[j]<=57) count++;
    		}
    		printf("%d
    ",count);
    	}
    	return 0;
    }
    

    2023

    #include<stdio.h>
    int main()
    {
    int n,m,i,j,count,s;
    double a[51][51],sum1[51],sum2[51];
    while(scanf("%d%d",&n,&m)!=EOF)
    	{
    		for(j=1;j<=m;j++)
    		{
    			sum2[j]=0;
    		}
    		for(i=1;i<=n;i++)
    		{
    			sum1[i]=0;
    			for(j=1;j<=m;j++)
    			{
    				scanf("%lf",&a[i][j]);
    				sum1[i]+=a[i][j];
    				sum2[j]+=a[i][j];
    			}
    		}
    		for(i=1;i<=n;i++)
    		{
    			if(i!=n)
    				printf("%.2lf ",sum1[i]/(double)m);
    			else
    				printf("%.2lf",sum1[i]/(double)m);
    		}
    		printf("
    ");
    		for(i=1;i<=m;i++)
    		{
    			if(i!=m)
    				printf("%.2lf ",sum2[i]/(double)n);
    			else
    				printf("%.2lf",sum2[i]/(double)n);
    		}
    		printf("
    ");
    		count=0;
    		for(i=1;i<=n;i++)
    		{
    			s=0;
    			for(j=1;j<=m;j++)
    			{
    				if(a[i][j]>=sum2[j]/(double)n)
    				s++;
    			}
    			if(s==m)
    			count++;
    		}
    		printf("%d
    
    ",count);
    	}
    }
    
  • 相关阅读:
    工序打扎流程(自定义按钮移动、群响应。)
    将FAT磁盘转化为NTFS格式。
    VC监视新硬件插入电脑。
    VC读取分析网络文件
    工序打扎流程(箭头实现、刷新画面)
    VC实现自定义按钮响应拖动
    VC中ListCtrl经验总结【转载】
    C++的优先级
    VC画面闪烁及解决方法
    改变 CListCtrl、CHeaderCtrl 高度、字体、颜色和背景
  • 原文地址:https://www.cnblogs.com/SiriusZHT/p/14310806.html
Copyright © 2011-2022 走看看