[BZOJ1385][Baltic2000]Division expression(gcd)
2016-04-02 10:39
316 查看
题目描述
传送门题解
x1一定为分子,x2一定为分母,其他的都可以通过加括号移到分母上去。所以只需要判断x2能不能被其他的数消掉即可,这个过程可以用gcd。
代码
#include<iostream> #include<cstring> #include<cstdio> using namespace std; const int max_n=1e4+5; int T,n,k,t; int a[max_n]; inline int gcd(int a,int b){ if (!b) return a; else return gcd(b,a%b); } int main(){ scanf("%d",&T); while (T--){ scanf("%d",&n); scanf("%d",&a[1]); scanf("%d",&k); for (int i=1;i<=n-2;++i) scanf("%d",&a[i+1]); for (int i=1;i<n;++i){ int t=gcd(k,a[i]); k/=t; if (k==1){ printf("YES\n"); break; } } if (k!=1) printf("NO\n"); } }
总结
这种题该怎么做?多写写画画吧,说不定能看出一个比较简单的规律。
就像这道题,我觉得我一般是不会朝那个方向考虑的= =但是感受一下确实是这样。
相关文章推荐
- 使用Xcode自带的转换ARC工具
- Ruby语言基础学习二:Ruby类、变量、常量、伪变量
- Scala之Partially Applied Function和Currying
- 兔子--R.java丢失原因及解决的方法
- AndroidStudio配置github全攻略
- 测试某一段程序运行时间的方法
- 开发中设置清理App内存
- java封装(一):基于具体的类库设计人员与客户端程序员(使用者)的分离
- C++统计一个文件中每个数字字符(0~9)出现的次数
- Android中fill_parent、wrap_content和match_parent的区别
- 4-6 求单链表结点的阶乘和 (15分)
- 6.4 Android Framework - StateListDrawable
- 《程序员面试宝典》读书笔记
- Centos 32位兼容库安装
- 给定一个整数数组,重新排列数组使其左边奇数,右边偶数
- 【JQuery】replaceWith()和replaceAll()替换内容
- Android—JNI调用简单实例解析/Eclipse无添加NDK的选项/JNI返回数组
- cocos2d-JS 第二炮Cocos Creater(使用当下最新的编辑器,带你ZB装带你fly)
- linux shell常用快捷键 通配符
- 【map】【HDOJ】5233 Gunner II