Ja. Ich habe als Flattern keine Fortschritte gemacht, aber ich habe in der Vergangenheit angefangen, Fragen zu stellen. http://codeforces.com/contest/1
Ein Problem Grob In Berland gibt es einen Theatergarten mit einer Fläche von n * m. Verbreiten Sie den Garten mit der Mindestanzahl an Steinen von a * a.
Wenn Sie sich vorstellen, es vom Ursprung O aus zu füllen, sollten Sie keine Steine an den Rändern platzieren können, aber es ist nicht erlaubt, die Flaggensteine zu brechen. Soweit viele Menschen gesehen haben, haben sie eine gemeinsame Methode angewendet. Kann also das Standardproblem und die Standardformel gelten? .. ..
((n+a-1)/a)*((m+a-1)/a)
((Vertikal im Garten+Stein-1)/Stein)*((Neben dem Garten+Stein-1)/Stein)
Da der Stein diesmal quadratisch ist, ändern sich die vertikale und horizontale Richtung nicht, aber die Methode zum Anwenden der Formel für einen rechteckigen Stein ist derzeit unbekannt.
a.py
(n,m,a)=map(int,raw_input().split())
#if n%a != 0: n+= n%a
#if m%a != 0: m+= m%a
print ((n+a-1)/a)*((m+a-1)/a)
B Problem Grob Excel-ähnliche Tabelle Es gibt zwei Arten von n-Zeilen-Eingaben. BC23 BC ist Spalte, 23 ist Zeile R23C55 R ist Zeile, C ist Spalte
602523 Sein letzter Tag bezog sich auf die Lösung.
b.py
#!/usr/bin/env python
# -*- coding: UTF-8 -*-
import timeit
import time
import sys
import io
import re
import math
n=int(raw_input())
for i in range(n):
m=raw_input()
#Überprüfen Sie, ob der Eingang R-Nummer C-Nummer ist
#Ursprünglich übereinstimmen=Obwohl es geschrieben wurde, habe ich es vermieden, weil es mit der Match-Anweisung in Konflikt steht, wenn es in Zukunft wiederverwendet wird.
chk=re.search(r'R(\d+)C(\d+)',m)
if chk:
#Können Sie die ersten und zweiten Stellen abrufen, nach denen Sie suchen? ?? Toll
x=int(chk.group(2))
res=''
while x:
#Überprüfung der eingebauten Funktion ord
res=chr(ord('A')+(x-1)%26)+res
x=(x-1)/26
#Wenn Sie den numerischen Wert der Zeile extrahieren können, müssen Sie nichts verarbeiten
print (res+chk.group(1))
else:
#Auch hier wird die Suche vorbereitet, um nur nicht numerische Werte und numerische Werte zu extrahieren.
t=re.search(r'(\D+)(\d+)',m)
x=0
for letter in t.group(1):
x=x*26+(ord(letter)-ord('A')+1)
#Keine Notwendigkeit zu verarbeiten, wenn Sie die Linie nehmen
#Die Spalte ist auch hier ord()Zu
print ('R%dC%d' % (int(t.group(2)), x))
C Problem Ich weiß es nicht Es gab eine Person, die den Problemsatz mit einer japanischen Übersetzung erklärte. http://d.hatena.ne.jp/kyuridenamida/20120124/1327336975
Ein wenig hier in der Warteschleife
Recommended Posts