HDU 5742 It's All In The Mind 水题

来源:互联网 发布:手机淘宝如何切换账号 编辑:程序博客网 时间:2024/05/01 15:15

题解估计没人看了,毕竟是水题,把题目公式改写一下,就知道a[1],a[2]尽量大,后面数字尽量小,填数字进去即可。


#include <cstdio>#include <ctime>#include <vector>#include <stack>#include <cstring>#include <algorithm>#include <iostream>#include <queue>using namespace std;#define pr(x) cout<<#x<<" = "<<x<<" "#define prln(x)    cout<<#x<<" = "<<x<<endltypedef long long LL;const int maxn = 100 + 10;int n, m;LL a[maxn];void init(){scanf("%d%d", &n, &m);memset(a,-1,sizeof(a));while (m--){int x,y;scanf("%d%d", &x, &y);a[x] = y;}}LL gcd(LL a, LL b){    return a%b?gcd(b,a%b):b;}void doit(){if (a[1]==-1)a[1]=100;if (a[2] ==-1)a[2]=a[1];a[n + 1] = 0;for (int i = n; i >= 3; -- i)if (a[i]==-1)a[i]=a[i + 1];LL A = a[1] + a[2];LL B = 0;for (int i = 1; i <= n ;++i)B += a[i];LL C = gcd(A,B);A/=C;B/=C;printf("%lld/%lld\n", A,B);}int main(){int T;double st=clock();scanf("%d", &T);while (T--){init();doit();}//cout<<"程序运行时间为:  "<< (clock()-st)/1000<<endl;return 0;}


0 0