当前位置: 首页 > article >正文

洛谷P2651 添加括号III

题目链接:P2651 添加括号III - 洛谷 | 计算机科学教育新生态

题目难度:普及一

题目分析:

a1肯定是分子,a2肯定是分母,那么尽可能多的是a3以后的变为分子,怎么办呢?

a1/(a2/a3/a4/...)=a1a3a4.../a2,所以我们只要确认a1a3a4.../a2是否是整数。

但是如果进行约分,知道a2能被约分成1,那么就是整数。

每次将a2=a2/gcd(a2,ai),i=(1,3,4,5...)即可。

代码部分:

#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
const int N = 10010;
int t,n;
int a[N];

ll gcd(ll a, ll b) {
    return b ? gcd(b, a % b) : a;
}

int read()
{
	int s=0,f=1;char ch=getchar();
	
	while (ch<'0'||ch>'9')
	{
   	   if (ch=='-') f=-1;
	   ch=getchar();
	}
	while (ch>='0'&&ch<='9')
	{
	   s=s*10+ch-'0';
	   ch=getchar();
	}
	return s*f;
}

void sol()
{
   n = read();
   a[1] = read(),a[2] = read();
   a[2] /= gcd(a[1],a[2]);
   
   for(int i = 3; i <= n; i++)
   {
   	 a[i] = read();
   	 a[2] /= gcd(a[2],a[i]);
   }
   if(a[2] == 1) puts("Yes");
   else puts("No");
}

int main() {
   
    t = read();
    
    while(t--) sol();
    
    return 0;
}


原文地址:https://blog.csdn.net/2302_79431881/article/details/145408419
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.kler.cn/a/527287.html

相关文章:

  • 我的创作纪念日——成为创作者的 第365天(1年)
  • Spring RESTful API 设计与实现
  • 使用openAI与Deepseek的感受
  • 安心即美的生活方式
  • 2025-1-26-sklearn学习(46) 无监督学习: 寻求数据表示 空伫立,尽日阑干倚遍,昼长人静。
  • Native Memory Tracking 与 RSS的差异问题
  • 验证二叉搜索数(98)
  • 【算法】动态规划专题① ——线性DP python
  • 理解动手学深度学习的自编包d2l
  • 青少年编程与数学 02-008 Pyhon语言编程基础 05课题、数据类型
  • 【Elasticsearch】match_bool_prefix 查询 vs match_phrase_prefix 查询
  • DeepSeek的使用技巧介绍
  • SARIMA介绍
  • 【TCP协议】流量控制 滑动窗口
  • 高速PCB设计指南5——电磁干扰和电磁兼容
  • CSDN的历史
  • Flink Connector 写入 Iceberg 流程源码解析_confluent icebergsinkconnector
  • git push到远程仓库时无法推送大文件
  • DeepSeek - R1:AI 推理模型的技术深度剖析与行业影响
  • 浅析 SSH 免密登录原理