社区讨论

为什么输出是科学计数法啊

P9749[CSP-J 2023] 公路参与者 4已保存回复 9

讨论操作

快速查看讨论及其快照的属性,并进行相关操作。

当前回复
9 条
当前快照
1 份
快照标识符
@m2oqag01
此快照首次捕获于
2024/10/25 20:48
去年
此快照最后确认于
2025/11/04 16:10
4 个月前
查看原帖
求大佬帮忙看看,为什么有一个点输出的是科学计数法啊
CPP
#include<bits/stdc++.h>
#define ll long long
using namespace std;
const ll N=1e5+5; 
ll n,a[N],d,v[N],zuixiaoa,ans,shenyu;
int main()
{
	zuixiaoa=0x3ff;
	ans=0;
	shenyu=0;
	cin>>n>>d;
	for(ll i=1;i<n;i++)
	{
		cin>>v[i];
	}
	for(ll i=1;i<=n;i++)
	{
		cin>>a[i];
		zuixiaoa=min(zuixiaoa,a[i]);
	}
	ll z=0;
	for(ll i=1;i<n;i++)
	{
		z+=v[i];
	}
	if(zuixiaoa==a[1])
	{
		cout<<floor(z/d)*a[1];
		return 0; 
	}
	for(ll i=1;i<n;i++)
	{
		ll p=v[i]-shenyu;
		ll dd=p/d;
		if(dd*d<p)
		dd++;
		ans+=a[i]*dd;
		shenyu=dd*d-p;
	    if(a[i]<a[i+1])
		{
			swap(a[i],a[i+1]);
		}
	}
	cout<<ans;
	return 0;
} 

回复

9 条回复,欢迎继续交流。

正在加载回复...