“科大讯飞杯”第十七届同济大学程序设计预选赛暨高校网络友谊赛 A-张老师和菜哭武的游戏(GCD)


http://www.yyycode.cn/index.php/2020/05/16/%e7%a7%91%e5%a4%a7%e8%ae%af%e9%a3%9e%e6%9d%af%e7%ac%ac%e5%8d%81%e4%b8%83%e5%b1%8a%e5%90%8c%e6%b5%8e%e5%a4%a7%e5%ad%a6%e7%a8%8b%e5%ba%8f%e8%ae%be%e8%ae%a1%e9%a2%84%e9%80%89%e8%b5%9b/ 


思路:观察到开始的时候在1-n中选p,这个p是有a+b/a-b的性质的。

我们现在先把a+b记为c,a-b记为d;这个c是a*x1+b*y1的一种形式,同理这个d也是a*x2+b*y2的一种形式

那么下一次拿的数字为a+c,a-c,b+c,b-c;将c/d换成上一行提到的形式,可得下一次拿的都是 a*x+b*y的形式,那么我们可以知道p=a*x+b*y,那么p是gcd(a,b)的倍数,于是在1-n中算出有多少个gcd(a,b)的倍数,如果是奇数那么先手赢

反思:如果一个数能表示成p=a*x+b*y,那么p是gcd(a,b)的倍数

简单理解:gcd(a,b)=d;那么p=d*(x+?)+b*(y+?);

#include<iostream>
#include<vector>
#include<queue>
#include<cstring>
#include<algorithm>
using namespace std;
const int maxn=1e5;
typedef long long LL;

LL gcd(LL a,LL b)
{
	return b?gcd(b,a%b):a;
}
int main(void)
{
	LL t;cin>>t;
	while(t--)
	{
		LL n,a,b;cin>>n>>a>>b;
		LL k=n/gcd(a,b);
        k-=2;
		if( k>0 && k%2==1 ) cout<<"Yes"<<endl;
		else cout<<"No"<<endl;
	} 

return 0;
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 很高兴回答你的问题。同济大学开设了多门Python程序设计的课程,其中包括Python程序设计、Python网络编程、Python数据挖掘与机器学习等。这些课程主要涵盖Python语言基础、面向对象编程、常用模块使用、Web开发、数据处理与可视化、机器学习等方面的内容。如果您想深入学习Python编程,可以考虑参加这些课程。 ### 回答2: 同济大学的python程序设计课程是一门非常重要且受欢迎的课程。这门课程旨在教授学生基本的python编程知识和技能,帮助他们掌握编写简单程序的能力。 在同济大学的python程序设计课程中,学生将学习如何编写和运行python程序,包括使用python的基本语法、控制流、函数等。他们还将学习如何处理各种数据类型,如字符串、列表、元组和字典,以及如何使用python的内置库和第三方库来扩展程序的功能。 此外,同济大学的python程序设计课程还注重培养学生的实践能力。学生将有机会参与各种实践项目,例如编写简单的游戏、实现简单的数据分析程序等。通过这些实践项目,学生将能够将他们所学的知识应用到实际问题中,并提高他们解决问题的能力。 同济大学的python程序设计课程还注重培养学生的团队合作和沟通能力。学生将被组织成小组,共同完成一些项目。在这个过程中,他们将学会与他人合作、交流和分享他们的想法和解决方案。这将有助于他们培养与他人协作和沟通的能力,以及提高他们的团队合作能力。 总之,同济大学的python程序设计课程提供了一个综合的学习机会,帮助学生掌握python编程的基本知识和技能,并培养他们的实践能力、团队合作能力和沟通能力。这将为他们未来的学习和职业发展打下坚实的基础。 ### 回答3: 同济大学的python程序设计课程是一门在计算机学院开设的专业课程。这门课程旨在让学生掌握Python编程语言相关的基础知识和技能。 首先,课程会介绍Python编程语言的基本语法和数据类型。学生们会学习如何使用变量、运算符和控制语句来编写简单的程序。 其次,课程会涉及到Python的常用库和模块。学生们将学习如何使用这些库和模块来实现各种功能,比如处理文件、网络编程、图形界面等。同时,课程还会让学生了解Python生态系统中其他重要的库和框架,比如Django和NumPy等。 此外,课程还会让学生了解一些常见的软件开发实践。学生们将通过编写小型项目来锻炼自己的编程能力和解决问题的能力。他们将学习如何进行模块化设计、代码调试和错误处理等。 最后,同济大学的python程序设计课程还注重培养学生的团队合作和沟通能力。学生们将有机会参与到小组项目中,与其他组员合作完成一个完整的项目。 总之,同济大学的python程序设计课程通过系统性的教学,让学生全面掌握Python编程语言的基础和应用。这门课程不仅会提升学生的编程能力,还会培养他们的问题解决能力和团队合作精神。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值