結果
問題 |
No.403 2^2^2
|
ユーザー |
![]() |
提出日時 | 2015-12-10 16:33:01 |
言語 | C#(csc) (csc 3.9.0) |
結果 |
AC
|
実行時間 | 30 ms / 2,000 ms |
コード長 | 1,050 bytes |
コンパイル時間 | 2,078 ms |
コンパイル使用メモリ | 113,212 KB |
実行使用メモリ | 27,312 KB |
最終ジャッジ日時 | 2024-11-06 15:11:23 |
合計ジャッジ時間 | 2,938 ms |
ジャッジサーバーID (参考情報) |
judge5 / judge1 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 27 |
コンパイルメッセージ
Microsoft (R) Visual C# Compiler version 3.9.0-6.21124.20 (db94f4cc) Copyright (C) Microsoft Corporation. All rights reserved.
ソースコード
using System; using System.Collections.Generic; using System.Linq; using System.IO; using System.IO.Compression; using System.Text; namespace Solver { class Program { const int M = 1000000007; static void Main() { var sw = new System.IO.StreamWriter(Console.OpenStandardOutput()) { AutoFlush = false }; var a = Console.ReadLine().Split('^').Select(long.Parse).ToArray(); if (a[0] % M == 0) { Console.WriteLine("0 0"); return; } sw.WriteLine("{0} {1}", pm(pm(a[0], a[1], M), a[2], M), pm(a[0], pm(a[1], a[2], M - 1), M)); sw.Flush(); } static long pm(long a, long b, long M) { if (a >= M) return pm(a % M, b, M); if (a == 0) return 0; if (b == 0) return 1; if (b == 1) return a % M; var t = pm(a, b / 2, M); if ((b & 1) == 0) return t * t % M; else return t * t % M * a % M; } } }