Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package com.company;
- import javafx.util.Pair;
- import javax.xml.crypto.dsig.keyinfo.KeyValue;
- import java.lang.reflect.Array;
- import java.security.KeyStore;
- import java.text.Collator;
- import java.text.DecimalFormat;
- import java.util.*;
- import java.util.function.Predicate;
- import java.util.regex.Matcher;
- import java.util.regex.Pattern;
- import java.util.stream.Collector;
- import java.util.stream.Collectors;
- public class Main {
- public static String encrypt(String racer, String geohash, int key){
- String decryptedGeohash = "";
- StringBuilder builder = new StringBuilder();
- for (int i = 0; i < geohash.length(); i++) {
- char character = geohash.charAt(i);
- int encryptedCharacter = (int) character + key;
- builder.append((char) encryptedCharacter);
- }
- decryptedGeohash = builder.toString();
- return racer + " -> " + decryptedGeohash;
- }
- public static void main(String[] args) {
- Scanner scanner = new Scanner(System.in);
- final String REGEX = "^([\\#|\\$|\\%|\\*|\\&])(?<racer>[A-Za-z]+)\\1\\=(?<length>[0-9]+)\\!\\!(?<geohash>.+)$";
- Pattern pattern = Pattern.compile(REGEX);
- while(true){
- String input = scanner.nextLine();
- Matcher matcher = pattern.matcher(input);
- if(matcher.find()){
- String racer = matcher.group("racer");
- String message = matcher.group("geohash");
- int length = Integer.parseInt(matcher.group("length"));
- if(message.length() == length){
- System.out.print("Coordinates found! ");
- System.out.println(encrypt(racer, message, length));
- return;
- }
- }
- System.out.println("Nothing found!");
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement