hdu 5504 5505
来源:互联网 发布:苹果电脑设计绘图软件 编辑:程序博客网 时间:2024/06/07 12:45
11.8
rigou阿,刚才都写好了结果手贱给关了,还tm没包存。
第一题,水题,注意处理零的情况,不用unsigned也能过,我反正没用。
#include<stdio.h>#include<iostream>#include<algorithm>using namespace std;#define inf 1<<64 long long a[100];int main(){int T,n,flag=0,k; long long ans;long long tmp,x;scanf("%d",&T);/*ans=1;flag=0;tmp=-1000000000;*/while(T--){ans=1;flag=0;k=0;int zero=0;scanf("%d",&n);for(int i=0;i<n;i++){scanf("%lld",&x);if(x>0){flag=1;ans*=x;}else if(x<0){ a[k++]=-x;}else { zero=1;}}sort(a,a+k);for(int i=k-1;i>=0;i-=2){ if(i-1>=0) { ans*=a[i]; ans*=a[i-1]; flag=1; } else break;}if(flag==1) { if(zero==1&&ans<0) ans=0; printf("%lld\n",ans);}else{ if(zero==1) printf("0\n"); else printf("-%lld\n",a[0]);}}}第二题,一开始想到的是搜索,但是好像会超时,因为他说n每次更新之后因子的也会发生变化,每次都重新求一边,想想就很费劲。
然后观察了一下,首先m%n一定要等于零,否则不可能变过去,然后,(瞄了一眼discuss,发现好像大体思路差不多,每次更新n用的是n和m/n的最大公约数,因为要求最少几步,然后每次都判断能不能变化。这里有个疑问为什么每次都要选gcd,其实仔细想一下,你选个其他的只有比gcd小的了,不能满足最少变化。所以,,,
注意这次要用unsigned。
#include<stdio.h>#include<iostream>#include<algorithm>using namespace std;#define inf 1<<64 long long a[100];int main(){int T,n,flag=0,k; long long ans;long long tmp,x;scanf("%d",&T);/*ans=1;flag=0;tmp=-1000000000;*/while(T--){ans=1;flag=0;k=0;int zero=0;scanf("%d",&n);for(int i=0;i<n;i++){scanf("%lld",&x);if(x>0){flag=1;ans*=x;}else if(x<0){ a[k++]=-x;}else { zero=1;}}sort(a,a+k);for(int i=k-1;i>=0;i-=2){ if(i-1>=0) { ans*=a[i]; ans*=a[i-1]; flag=1; } else break;}if(flag==1) { if(zero==1&&ans<0) ans=0; printf("%lld\n",ans);}else{ if(zero==1) printf("0\n"); else printf("-%lld\n",a[0]);}}}
0 0
- hdu 5504 5505
- HDU 5505
- hdu 5505
- hdu 5505
- hdu-5505 数论
- hdu
- hdu
- HDU
- hdu ()
- hdu
- hdu
- HDU
- HDU
- hdu
- hdu
- HDU
- Hdu
- hdu
- 三种方法实现:三人表决器-20151104
- MapKit大头针的基本使用
- Ubuntu 12.04编译mt6582错误 - Tracy Mcgrady的专栏 - 博客频道 - CSDN.NET awk: line 4: function strtonum never def
- <React: Up and Running>阅读笔记 — The life of a component & Excel: a fancy table component
- ——黑马程序员——OC中的分类(Category)总结
- hdu 5504 5505
- UML——组件图与部署图
- 【C】【笔记】高质量C++编程指南
- Ubuntu中编译Android JellyBean 4.2.1源码出现Switch.pm出错信息的解决方法
- hdu5514Frogs 容斥
- ionic/angular中module探秘
- 深入理解Java内存模型(一)——基础
- ListView的属性及方法详解
- 小紫书 习题 3-8(UVA 202) 循环小数(Repeating Decimals)