Robotti liikkuu kuten viikon aiemmassa tehtävässä, mutta toistaa samaa liikesarjaa k kertaa peräkkäin. Monessako eri ruudussa robotti käy yhteensä?
Voit olettaa, että liikesarjassa on enintään 100 komentoa ja k on välillä 1 \dots 10^9.
Python
Toteuta tiedostoon longroute.py
funktio count
, joka ilmoittaa eri ruutujen määrän, kun sille annetaan robotin liikesarja ja toistojen määrä.
def count(s,k): # TODO if __name__ == "__main__": print(count("UR", 100)) # 201 print(count("UD", 100)) # 2 print(count("UURRDDL", 500)) # 1506 print(count("L", 10**9)) # 1000000001 print(count("DLUR", 10**9)) # 4
Java
Toteuta tiedostoon LongRoute.java
metodi count
, joka ilmoittaa eri ruutujen määrän, kun sille annetaan robotin liikesarja ja toistojen määrä.
public class LongRoute { public long count(String s, int k) { // TODO } public static void main(String[] args) { LongRoute l = new LongRoute(); System.out.println(l.count("UR", 100)); // 201 System.out.println(l.count("UD", 100)); // 2 System.out.println(l.count("UURRDDL", 500)); // 1506 System.out.println(l.count("L", 1000000000)); // 1000000001 System.out.println(l.count("DLUR", 1000000000)); // 4 } }