xtu-c语言考试复习

1391

cpp 复制代码
#include<stdio.h>

int main()
{
	int t;
	scanf("%d",&t);
	
	while(t--)
	{
		int second=0;
		scanf("%d",&second);
		
		int hour=second/3600;
		int minute=(second%3600)/60;
		second-=hour*3600+minute*60;
		
		printf("%02d:%02d:%02d\n",hour,minute,second);
	}
	
	return 0;
}

算是一个格式的题目,没想到自己还记得哈哈

1392

cpp 复制代码
#include<stdio.h>

int gcd(int a,int b)
{
	return b>0?gcd(b,a%b):a;
}

int main()
{
	int t;
	scanf("%d",&t);
	
	while(t--)
	{
		int a,b;
		scanf("%d%d",&a,&b);
		
		int up=2*a*a*a+a*a*b+2*a*b*b+b*b*b;
		int down=2*(a+b);
		int temp=gcd(up,down);
		up/=temp;
		down/=temp;
		
		if(down==1)	printf("%d\n",up);
		else	printf("%d/%d\n",up,down);
	}
	
	return 0;
}

确实啊,当时觉得难的不行的题,现在觉得其实一点都不难,所以自己还是练习的太少了,详细的过程可以看之前的博客

1393

WA了,感觉很奇怪啊,为啥

cpp 复制代码
#include<stdio.h>

#define N 110

int a[N];

int main()
{
	int t;
	scanf("%d",&t);
	
	while(t--)
	{
		int n;
		scanf("%d",&n);
		for(int i=1;i<=n;i++)	scanf("%d",&a[i]);
		
		int cnt=0;
		for(int i=1;i<=n;i++)
		{
			for(int j=i+1;j<=n;j++)
			{
				for(int k=j+1;k<=n;k++)
				{
					double cos_angle=((double)a[i]*(double)a[i]+(double)a[j]*(double)a[j]-(double)a[k]*a[k])/((double)2*a[i]*a[j]);
					if(a[i]+a[j]>a[k]&&a[k]-a[i]<a[j]&&cos_angle>0&&cos_angle<1)
					{
						cnt++;
					}
				}
			}
		}
		
		printf("%d\n",cnt);
	}
	
	return 0;
}

看了一下之前写的博客,原来是要把输入的数字排序,然后再根据锐角三角形的性质来计算,我这次居然想到了用余弦定理来计算哈哈,还是比较睿智的做法,最大的边对应的角一定是最大的角,最大的角的余弦值在0到1之间的话,说明最大的角是锐角,把计数器的值增加1即可

cpp 复制代码
#include<stdio.h>

#define N 110

int a[N];

int main()
{
	int t;
	scanf("%d",&t);
	
	while(t--)
	{
		int n;
		scanf("%d",&n);
		for(int i=1;i<=n;i++)	scanf("%d",&a[i]);
		
		for(int i=1;i<=n;i++)
		{
			for(int j=i+1;j<=n;j++)
			{
				if(a[j]<a[i])
				{
					int temp=a[j];
					a[j]=a[i];
					a[i]=temp;
				}
			}
		}
		
		int cnt=0;
		for(int i=1;i<=n;i++)
		{
			for(int j=i+1;j<=n;j++)
			{
				for(int k=j+1;k<=n;k++)
				{
					double cos_angle=((double)a[i]*(double)a[i]+(double)a[j]*(double)a[j]-(double)a[k]*a[k])/((double)2*a[i]*a[j]);
					if(a[i]+a[j]>a[k]&&a[k]-a[i]<a[j]&&cos_angle>0&&cos_angle<1)
					{
						cnt++;
					}
				}
			}
		}
		
		printf("%d\n",cnt);
	}
	
	return 0;
}

1088

cpp 复制代码
#include<stdio.h>

#define N 10007

int main()
{
	int n;
	while(~scanf("%d",&n))
	{
		if(n==-1)	break;
		
		int ans=1;
		for(int i=1;i<=n;i++)
		{
			ans*=i;
			ans%=N;
		}
		printf("%d\n",ans);
	}
	
	return 0;
}

无他,惟手熟尔

1075

cpp 复制代码
#include<stdio.h>

int gcd(int a,int b)
{
	return b>0?gcd(b,a%b):a;
}

int ans(int a,int b)
{
	int res=a*b/gcd(a,b);
	return res;
}

int main()
{
	int a,b;
	while(~scanf("%d%d",&a,&b))
	{
		if(a==0&&b==0)	break;
		
		printf("%d\n",ans(a,b));
	}
	
	return 0;
}

1138

cpp 复制代码
#include<stdio.h>

int gcd(int a,int b)
{
	return b>0?gcd(b,a%b):a;
}

int main()
{
	int t;
	scanf("%d",&t);
	
	while(t--)
	{
		int a,b;
		scanf("%d%d",&a,&b);
		if(a==b)	puts("0");
		else if(b<2)	puts("1");
		else
		{
			int up=a*(a-1)-b*(b-1),down=a*(a-1);
			int temp=gcd(up,down);
			up/=temp,down/=temp;
			
			if(down==1)	printf("%d\n",up);
			else	printf("%d/%d\n",up,down);
		}
	}
	
	return 0;
}

哈哈哈确实自己可以独立ac了

相关推荐
lzh_200110125 分钟前
树状数组理解
算法
R-G-B20 分钟前
哈希表(hashtable),哈希理论,数组实现哈希结构 (C语言),散列理论 (拉链发、链接发),散列实现哈希结构,c++ 实现哈希
c语言·哈希算法·散列表·哈希表·数组实现哈希结构·散列实现哈希结构·c++ 实现哈希
历程里程碑24 分钟前
C++ 6 :string类:高效处理字符串的秘密
c语言·开发语言·数据结构·c++·笔记·算法·排序算法
蓝色汪洋25 分钟前
luogu迷宫寻路
算法
未来之窗软件服务31 分钟前
幽冥大陆(四十八)P50酒店门锁SDK 苹果object c语言仙盟插件——东方仙盟筑基期
c语言·开发语言·酒店门锁·仙盟创梦ide·东方仙盟·东方仙盟sdk
木头左1 小时前
自适应门限动态调整算法在量化交易策略中的应用
算法
deepdata_cn1 小时前
非线性规划(NLP)算法
算法
TL滕1 小时前
从0开始学算法——第十五天(滑动窗口)
笔记·学习·算法
@小码农1 小时前
2025年全国青少年信息素养大赛 Gandi编程 小低组初赛真题
数据结构·人工智能·算法·蓝桥杯
CoderYanger1 小时前
贪心算法:7.最长连续递增序列
java·算法·leetcode·贪心算法·1024程序员节