社区讨论

我不理解为什么加一行就对了

P14826踩踩标参与者 2已保存回复 1

讨论操作

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

当前回复
1 条
当前快照
1 份
快照标识符
@mjfqtafo
此快照首次捕获于
2025/12/21 21:08
2 个月前
此快照最后确认于
2025/12/24 18:15
2 个月前
查看原帖

```

int main() {
  quick;
  cin>>T;
  ll n,k;
  tt(T) {
    cin>>n>>k;
    ll ans=infl;
    if (k==0){cout<<0<<endl ; continue;}
    else
    {for(ll i=1;i*i<=n+350;i++)
      {
  ans=min(ans,i+n/i+k*(n%i));
      }
     // 加上这一行就对了,但是我想我在前面已经特判过了 ans=min(ans,k*n);
  cout<<ans<<endl;
    } 

  }
}
```

回复

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

正在加载回复...