naoya_t@hatenablog

いわゆるチラシノウラであります

A - 5000兆円

A - 5000兆円

実行時間制限: 2 sec / メモリ制限: 1024 MB
配点: 100点

問題文

高橋君はAtCoder国の大統領になりました。
経済活性化のため国民全員に5000兆円を配布するように財務省トップの青木君に指示を出しました。
AtCoder国には国民がN人います。
青木君は総額何円用意する必要がありますか。
高橋君と青木君もAtCoder国民なので配布対象となります。(Nは高橋君と青木君も含みます)

制約

  • 2\le N\le 10^9

入力

入力は以下の形式で標準入力から与えられる。

N

出力

用意する金額(円)を出力せよ。



入力例1

1000

出力例1

5000000000000000000

1000人に5000兆円ずつ配布すると500京(5\times 10^{18})円が必要になります。
ハイパーインフレ待ったなしですね。

入力例2

2

出力例2

10000000000000000

高橋君と青木君しか国民がいない場合です。(高橋君と青木君はNに含まれます)

B - 5000兆円(改)

実行時間制限: 2 sec / メモリ制限: 1024 MB
配点: 100点

問題文

高橋君はAtCoder国の大統領になりました。
経済活性化のため国民全員に5000兆円を配布するように財務省トップの青木君に指示を出しました。
AtCoder国には国民がN人います。
青木君は総額何円用意する必要がありますか。
高橋君と青木君もAtCoder国民なので配布対象となります。(Nは高橋君と青木君も含みます)
答えは非常に大きくなる場合があるので、1000000007 で割った余りを出力してください。

制約

  • 2\le N\le 10^9

入力

入力は以下の形式で標準入力から与えられる。

N

出力

用意する金額(円)を 100000007 で割った余りを出力せよ。


入力例1

1000

出力例1

245

1000人に5000兆円ずつ配布すると500京(5\times 10^{18})円が必要になります。
5000000000000000000 を 1000000007 で割った余りは 245 です。

入力例2

2

出力例2

930000007

高橋君と青木君しか国民がいない場合です。(高橋君と青木君はNに含まれます)

入力例3

126010000

出力例2

30872450

2020年(令和2年)2月1日現在の日本の総人口の概算値は1億2601万人です。

ゆるふわ競技プログラミングオンサイト at FORCIA #3 writer料は初任給に含まれます

forcia.connpass.com
2/29(日) 13:30-19:00

バルト9で劇場版SHIROBAKO(公開初日)を観てから徒歩でフォルシアへ。(近いので)
コロナウィルス対策で各種イベント等が中止になり始めた時期で、会場に入る前にうがい手洗いを求められた。

FORCIAのゆるふわオンサイトは今回が第3回。
第1回から参加しているのだけれど(第2回は出張先から参加)、競プロerが順調に吸い込まれていく様子が楽しい。
(ゴリの人とか第1回では一般参加者でしたよね)

続きを読む

ゆるふわ競プロオンサイト @FORCIA #2 ゴリラの挑戦状


9/14(土) 13:30-19:00(コンテストは14:10-16:10)
オンサイト参加登録一番乗りしていたのだけれど、都合により当日都内(国内)にいないことが確定してキャンセル
でオンライン参加
9完で8位(オンライン参加2位)
f:id:n4_t:20190929144522j:plain:w600
(※全部で10問だと思ってたら2ページ目があった)

(あとで書く)

チェビシェフ距離への置き換えを利用して(k次元)マンハッタン距離の最大値を求める方法

LeetCode Weekly Contest 146のQ4でN個の点の3次元マンハッタン距離の最大値を求める問題が出たのでメモ。

内容的には

を理解する過程で噛み砕いたものなので、上記記事を既読の方は本稿を読むには及ばない。

MathJaxの不具合なのか、\max の下に2^{k-1}が書けなかったので2^k/2で代用。

続きを読む

A - GAFA文字列

A - GAFA文字列

実行時間制限: 2 sec / メモリ制限: 1024 MB
配点: 100点

問題文

Google, Apple, Facebook, Amazon各々の頭文字G,A,F,Aのみからなる文字列をGAFA文字列と呼びます。

GAFA文字列 s が1つ与えられます。高橋君はこの文字列に以下の操作をK回まで行うことができます。

AtCoderの頭文字のAAtCoderAに置き換えることができません。

この操作の後にできる文字列の中で、Aが最も多く含まれるものを表示してください。複数ある場合はどれを表示しても構いません。

制約

  • s'G','A','F','A'のみからなる文字列
  • 1\le|s|\le2\times10^5
  • 0\le K\le|s|

入力

入力は以下の形式で標準入力から与えられる。

K
s

出力:

操作の後にできる文字列の中で、Aが最も多く含まれるものを出力せよ。


入力例1

1
GAFA

出力例1

GAFA

Appleの頭文字のA(文字列の2文字目)をAtCoderAに置き換えたもので、Aが2つ含まれます。

他にも、Amazonの頭文字のA(文字列の4文字目)をAtCoderAに置き換えた

GAFA

もこの条件にあてはまります。


入力例2

0
GAFA

出力例2

GAFA

文字を置き換えることができないので、入力と同じ GAFA を表示します。