結果

問題 No.666 1000000007で割るだけ
ユーザー lzy9lzy9
提出日時 2018-03-23 22:21:12
言語 C#(csc)
(csc 3.9.0)
結果
AC  
実行時間 25 ms / 2,000 ms
コード長 4,921 bytes
コンパイル時間 2,303 ms
コンパイル使用メモリ 115,304 KB
実行使用メモリ 18,176 KB
最終ジャッジ日時 2024-06-24 21:37:04
合計ジャッジ時間 3,608 ms
ジャッジサーバーID
(参考情報)
judge3 / judge4
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
other AC * 24
権限があれば一括ダウンロードができます
コンパイルメッセージ
Microsoft (R) Visual C# Compiler version 3.9.0-6.21124.20 (db94f4cc)
Copyright (C) Microsoft Corporation. All rights reserved.

ソースコード

diff #
プレゼンテーションモードにする

using System;
using System.IO;
using System.Linq;
using System.Collections.Generic;
class Program
{
static int[] dx = new int[] { 0, 0, 1, -1 };
static int[] dy = new int[] { 1, -1, 0, 0 };
const int INF = 1010101010;
static void Solve()
{
var a = sc.Long();
var b = sc.Long();
pr.WriteLine(a * b % 1000000007);
}
class Node : IComparable
{
public int Id;
public int Cost;
public int CompareTo(object obj)
{
return ((Node)obj).Cost - Cost;
}
public override string ToString()
{
return $"Id: {this.Id} - Cost: {this.Cost}";
}
}
class Edge
{
public int To;
public int Cost;
}
static double F(double prev, double next, double t)
{
return Math.Pow(Math.Exp((next - prev) / t), 2);
}
static int[,] Mul(int[,] a, int[,] b)
{
var ret = new int[a.GetLength(0), b.GetLength(1)];
for (int i = 0; i < a.GetLength(0); i++)
for (int j = 0; j < b.GetLength(1); j++)
for (int k = 0; k < a.GetLength(1); k++)
ret[i, j] += a[i, k] * b[k, j];
return ret;
}
static int[,] Pow(int[,] a, int n)
{
var b = new int[a.GetLength(1), a.GetLength(0)];
var f = n % 2 == 1;
for (int i = 0; i < a.GetLength(0); i++)
b[i, i] = 1;
while (n > 0)
{
if (n % 2 == 1)
b = Mul(a, b);
n >>= 1;
}
return b;
}
class Coord
{
public int x;
public int y;
}
static void Main(string[] args)
{
// pr.AutoFlush = true;
Solve();
pr.Flush();
// Console.ReadKey();
}
static Scanner sc = new Scanner();
static Printer pr = new Printer();
}
class Heap<T> where T : IComparable
{
private List<T> _heap;
private int _last;
private int _cnt;
private IComparer<T> _comparer;
public Heap()
{
_heap = new List<T>();
_last = 0;
}
public Heap(IEnumerable<T> e)
{
_heap = new List<T>(e);
_cnt = _last = _heap.Count();
for (int i = _last / 2; 0 <= i; i--)
Heapify(i);
}
public Heap(IComparer<T> comparer)
{
_comparer = comparer;
}
public Heap(IEnumerable<T> e, IComparer<T> comparer) : this(e)
{
_comparer = comparer;
}
private int Compare(T a, T b)
{
if (_comparer == null)
return a.CompareTo(b);
else
return _comparer.Compare(a, b);
}
public bool Empty() {
return _last == 0;
}
public void Enqueue(T item)
{
if (_last < _cnt) {
_heap[_last++] = item;
}
else {
_heap.Add(item);
_cnt++;
_last++;
}
var i = _last - 1;
while (0 < i)
{
if (0 <= Compare(_heap[(i - 1) / 2], _heap[i]))
break;
swap((i - 1) / 2, i);
i = (i - 1) / 2;
}
}
public T Dequeue()
{
if (_last == 0)
throw new Exception("Empty");
var ret = _heap[0];
_heap[0] = _heap[--_last];
Heapify(0);
return ret;
}
public T Peek()
{
return _heap[0];
}
public int Count()
{
return _last;
}
private void Heapify(int i)
{
var max = i;
if (i * 2 + 1 < _last && Compare(_heap[max], _heap[i * 2 + 1]) < 0)
max = i * 2 + 1;
if (i * 2 + 2 < _last && Compare(_heap[max], _heap[i * 2 + 2]) < 0)
max = i * 2 + 2;
if (max == i)
return;
swap(i, max);
Heapify(max);
}
private void swap(int a, int b)
{
var t = _heap[a];
_heap[a] = _heap[b];
_heap[b] = t;
}
}
#region IO
class Scanner
{
private int _i = 0;
private string[] line = new string[0];
private T[] Enumerate<T>(int n, Func<T> f)
{
T[] ret = new T[n];
for (int i = 0; i < n; i++)
ret[i] = f();
return ret;
}
public string Str()
{
if (line.Length <= _i)
{
line = Console.ReadLine().Split(' ');
_i = 0;
}
return line[_i++];
}
public int Int() => int.Parse(Str());
public long Long() => long.Parse(Str());
public double Double() => double.Parse(Str());
public int[] Int(int n) => Enumerate(n, Int);
public long[] Long(int n) => Enumerate(n, Long);
public double[] Double(int n) => Enumerate(n, Double);
public string[] Str(int n) => Enumerate(n, Str);
}
class Printer : StreamWriter
{
public Printer() : base(Console.OpenStandardOutput())
{
AutoFlush = false;
}
}
#endregion
הההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההה
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
0