結果
| 問題 |
No.146 試験監督(1)
|
| コンテスト | |
| ユーザー |
|
| 提出日時 | 2020-08-17 23:13:00 |
| 言語 | C++14 (gcc 13.3.0 + boost 1.87.0) |
| 結果 |
WA
|
| 実行時間 | - |
| コード長 | 4,409 bytes |
| コンパイル時間 | 968 ms |
| コンパイル使用メモリ | 102,988 KB |
| 実行使用メモリ | 5,248 KB |
| 最終ジャッジ日時 | 2024-10-11 11:29:43 |
| 合計ジャッジ時間 | 1,702 ms |
|
ジャッジサーバーID (参考情報) |
judge2 / judge4 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| other | WA * 3 |
ソースコード
#include <iostream> // cout, endl, cin
#include <iomanip>
#include <cmath>
#include <limits>
#include <string> // string, to_string, stoi
#include <vector> // vector
#include <algorithm> // min, max, swap, sort, reverse, lower_bound, upper_bound
#include <utility> // pair, make_pair
#include <tuple> // tuple, make_tuple
#include <cstdint> // int64_t, int*_t
#include <cstdio> // printf
#include <map> // map
#include <queue> // queue, priority_queue
#include <set> // set
#include <stack> // stack
#include <deque> // deque
#include <unordered_map> // unordered_map
#include <unordered_set> // unordered_set
#include <bitset> // bitset
#include <cctype> // isupper, islower, isdigit, toupper, tolower
#define rep(i,N) for (ll i = 0; i < (N); i++)
#define repone(i,N) for(ll i = 1; i < (N); i++)
#define REP(i,N) for (ll i = (N)-1; i >= 0; i--)
#define FOR(j,i,N) for (ll j = (N)-1; j > (i); j--)
#define repsqrt(i,N) for(ll i = 1; i*i <= (N); i++)
#define updown(i,a,b) for(ll i = (a)-1; i < (b); i++)
#define ST string
#define vec vector<ll>
#define vecs vector<string>
#define outb(s) cout << fixed << setprecision(15) << s << endl;
#define out(s) cout << s << endl;
#define SZ(x) ((ll)(x).size())
#define Graph vector<vector<ll>>
#define vecb vector<lb>
#define P pair<ll, ll>
#define F first
#define S second
#define vecbool vector<bool>
using ll = long long;
using lb = long double;
using l = int;
using ll = long long;
using lb = long double;
using namespace std;
const ll mod = 1000000007;
const ll ze = 0;
const lb zeb = 0.0;
const ll on = 1;
const ll INF = 1e8;
const lb pi = 3.14159265358979;
ll nCk(ll N, ll K){
if(N>1){
ll kid = 1;
for(ll i = N; i > N - K; i--){
kid = kid * i;
}
for(ll i = 1; i < K + 1; i++){
kid = kid / i;
}
return kid;
}
else{
return 0;
}
}
ll stair_pow(ll N){// 階乗
ll sum = 1;
for(ll i = 1; i <= N; i++){
sum = sum * i % mod;
}
return sum % mod;
}
ll gcd(ll p, ll q){
return q ? gcd(q ,p % q):p;
}
ll lcm(ll p, ll q){
return p / gcd(p, q) * q;
}
bool is_prime(ll x){
if(x <= 1){
return false;
}
for(ll i=2; i * i <= x; i++){
if(x%i==0){
return false;
}
}
return true;
}
ll sum_of_num(ll num){// 各位の和
ll dig;
ll sum = 0;
while(num){
dig = num % 10;
sum = sum + dig;
num = num / 10;
}
return sum;
}
ll how_many_break(ll n, ll m){// 何回割れるか
ll counter = 0;
while (n % m == 0){
n = n / m;
counter++;
}
return counter;
}
ll many_pow(ll N, ll M){ // NのM乗
if(M == 0)return 1;
else{
ll sum = 1;
for(ll i = 0; i < M; i++){
sum *= N;
}
return sum;
}
}
ll one_to_i(ll i){ // 1からiまでの和
if(i < 0){
return 0;
}
else{
return i*(i+1)/2;
}
}
ll how_many_yaku(ll num){
ll ans = 0;
repsqrt(i,num){
if(num % i == 0){
ans++;
if(i != num/i){
ans++;
}
}
}
return ans;
}
ll digit(ll num){
ll digit=0;
while(num!=0){
num /= 10;
digit++;
}
return digit;
}
ll digitsum(ll num){
ll dig = 0,sum = 0;
while(num){
dig = num % 10;
sum += dig;
num /= 10;
}
return sum;
}
struct UnionFind {
vec d;
UnionFind(ll n = 0): d(n,-1) {}
ll find(ll x) {
if (d[x] < 0) return x;
return d[x] = find(d[x]);
}
bool unite(ll x, ll y) {
x = find(x); y = find(y);
if (x == y) return false;
if (d[x] > d[y]) swap(x,y);
d[x] += d[y];
d[y] = x;
return true;
}
bool same(ll x, ll y) { return find(x) == find(y);}
int size(ll x) { return -d[find(x)];}
};
vecbool seen;
void dfs(const Graph &G, ll v) {
seen[v] = true;
for (auto next_v : G[v]) {
if (seen[next_v]) continue;
dfs(G, next_v);
}
}
/*-----------------------------------------------------------------------------------*/
// cout << fixed << setprecision(15)
// continue
// count(S.begin(),S.end(),'');
// reverse(S.begin(), S.end());
// s.substr(8, 8)
// sort(p.begin(), p.end());
// sort(p.rbegin(), p.rend()); ← 降順sort.
// getline(cin,s);
/*-----------------------------------------------------------------------------------*/
int main() {
ios::sync_with_stdio(0); cin.tie(0);
ll n;
cin >> n;
ll ans = 0;
rep(i,n){
ll a,b;
cin >> a >> b;
ans += ((a+1)/2)*b;
ans %= mod;
}
out(ans);
return 0;
}