結果
問題 |
No.989 N×Mマス計算(K以上)
|
ユーザー |
|
提出日時 | 2020-10-12 03:55:50 |
言語 | C++17 (gcc 13.3.0 + boost 1.87.0) |
結果 |
AC
|
実行時間 | 32 ms / 2,000 ms |
コード長 | 671 bytes |
コンパイル時間 | 1,937 ms |
コンパイル使用メモリ | 200,872 KB |
最終ジャッジ日時 | 2025-01-15 06:49:14 |
ジャッジサーバーID (参考情報) |
judge3 / judge2 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 2 |
other | AC * 18 |
ソースコード
#include <bits/stdc++.h> using namespace std; typedef long long int ll; int main(){ cin.tie(nullptr); ios::sync_with_stdio(false); ll n,m,k; cin >> n >> m >> k; char c; cin >> c; vector<ll> a(n),b(m); for(int i=0;i<m;i++){ cin >> b[i]; } for(int i=0;i<n;i++){ cin >> a[i]; } sort(b.rbegin(), b.rend()); ll res=0; if(c=='+'){ for(int i=0;i<n;i++){ int l=-1,r=m; while(r-l>1){ int mid=(l+r)/2; if(b[mid]+a[i]>=k)l=mid; else r=mid; } res+=l+1; } } else{ for(int i=0;i<n;i++){ int l=-1,r=m; while(r-l>1){ int mid=(l+r)/2; if(b[mid]*a[i]>=k)l=mid; else r=mid; } res+=l+1; } } printf("%lld\n",res); }