读书人

TYVJ Q1024(double的运用)

发布时间: 2012-11-14 10:12:19 作者: rapoo

TYVJ Q1024(double的使用)

在C++中 double会以牺牲最小数为代价换取高位

另外请看好题目是求整数部分还是四舍五入


#include<cstdio>#include<cstring>#include<cstdlib>#include<cmath>#include<cctype>#include<iostream>#include<functional>#include<algorithm>#include<string>using namespace std;#define MAXN (1000+10)int a[MAXN][MAXN],n;int main(){long double ans=0.0;scanf("%d",&n);long long all=0;for (int i=1;i<=n;i++){for (int j=1;j<=n;j++)all+=((long long)n-i+1)*((long long)n-j+1);}for (int i=1;i<=n;i++)for (int j=1;j<=n;j++) {scanf("%d",&a[i][j]);ans+=(long double)(a[i][j])*(long double)(n-i+1)*(long double)(n-j+1)*(long double)(i*j);//cout<<ans<<' ';}cout.setf(ios::fixed);cout.precision(0);cout<<trunc(ans/(long double)(all))<<endl;return 0;}


读书人网 >编程

热点推荐