QOJ.ac

QOJ

ID题目提交者结果用时内存语言文件大小提交时间测评时间
#765431#9620. osu!maniaqmqcbhcAC ✓0ms3856kbC++201.1kb2024-11-20 14:17:482024-11-20 14:17:49

Judging History

你现在查看的是最新测评结果

  • [2024-11-20 14:17:49]
  • 评测
  • 测评结果:AC
  • 用时:0ms
  • 内存:3856kb
  • [2024-11-20 14:17:48]
  • 提交

answer

#include<bits/stdc++.h>
#define test(i) cout << #i << " "<< i << " " << endl;
#define endl '\n'

using namespace std;
typedef long long ll;

const int INF=0x3f3f3f3f;
const int N=2e5+5;

ll t,n;

void fio(){
    ios::sync_with_stdio(0);
    cin.tie(0);
    cout.tie(0);
}

void print(double a1,ll a2){
	a1*=100;
	printf("%.2lf",a1);
	cout << "%" << " ";
	printf("%lld",a2);
	cout << endl;
}

void solve(){
	double pp;
	cin >> pp;
	long double a[10],b[]={300,300,200,100,50,0};
	ll c[]={320,300,200,100,50,0};
	for(int i=0; i<6; i++){
		cin >> a[i];
	}
	double ans1=0;
	ll ans2=0;
	double tmp=0;
	for(int i=0; i<6; i++){
		ans1+=a[i]*b[i];
		tmp+=a[i];
	}
	ans1/=tmp*300;
	for(int i=0; i<6; i++){
		ans2+=a[i]*c[i];
	}
	ans2-=256*tmp;
	ans2=ans2*5*pp;
	if(ans2<0) print(ans1,0);
	else{
		ll tt=ans2;
		tt/=320*tmp;
		ll t1=tt,t2=tt+1;
		if(llabs(t1*320*tmp-ans2)>=llabs(t2*320*tmp-ans2)) print(ans1,t2);
		else print(ans1,t1);
	}
	
}

signed main()
{
	//fio();
	cin >> t;
	//t=1;
	while(t--){
		solve();
	}
	return 0;
}



详细

Test #1:

score: 100
Accepted
time: 0ms
memory: 3856kb

input:

18
1279
4624 4458 1109 220 103 314
753
3604 3204 391 33 9 29
807
5173 3986 763 84 29 96
718
576 461 60 5 2 7
947
4058 3268 764 169 42 158
568
2660 1731 161 16 6 15
641
4181 3126 656 56 10 43
630
3029 2336 377 41 10 61
529
1991 1354 181 11 9 5
1802
8321 2335 115 19 11 27
1645
3965 1087 41 6 1 13
1688...

output:

91.54% 543
97.40% 543
95.75% 523
97.12% 513
93.38% 499
98.16% 444
96.19% 430
96.20% 423
97.74% 400
99.19% 1604
99.38% 1482
99.14% 1465
98.53% 1251
100.00% 2688
100.00% 1792
100.00% 3000
52.78% 0
0.00% 0

result:

ok 18 lines