Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- using System;
- using System.Collections.Generic;
- using System.Linq;
- using System.Text;
- using System.Threading.Tasks;
- class DetectiveBoev
- {
- public static int SumDigits(int value)
- {
- int sum = 0;
- while (value != 0)
- {
- int rem;
- value = Math.DivRem(value, 10, out rem);
- sum += rem;
- if (sum > 9 && value == 0)
- {
- value = sum;
- sum = 0;
- }
- }
- return sum;
- }
- public static string Reverse(string s)
- {
- char[] charArray = s.ToCharArray();
- Array.Reverse(charArray);
- return new string(charArray);
- }
- static void Main(string[] args)
- {
- string codeword = Console.ReadLine();
- string message = Console.ReadLine();
- int[] codewordvalues = new int[codeword.Length];
- for (int c = 0; c < codeword.Length; c++)
- {
- codewordvalues[c] = Convert.ToInt32(codeword[c]);
- }
- int codevaluesum = codewordvalues.Sum();
- int mask = SumDigits(codevaluesum);
- // Console.WriteLine("Mask value: " +mask);
- int[] messagevalues = new int[message.Length];
- for (int i = 0; i < message.Length; i++)
- {
- messagevalues[i] = Convert.ToInt16(message[i]);
- }
- int[] dectyptmessagevalues = new int[message.Length];
- for (int c1 = 0; c1 < message.Length; c1++)
- {
- if (messagevalues[c1] % mask == 0)
- {
- dectyptmessagevalues[c1] = messagevalues[c1] + mask;
- }
- if (messagevalues[c1] % mask != 0)
- {
- dectyptmessagevalues[c1] = messagevalues[c1] - mask;
- }
- }
- char[] encodedmessage = new char[message.Length];
- for (int count = 0; count < message.Length; count++)
- {
- encodedmessage[count] = Convert.ToChar(dectyptmessagevalues[count]);
- }
- string finalmessage_reverse = new string(encodedmessage);
- // Console.WriteLine(finalmessage_reverse);
- string final_result = Reverse(finalmessage_reverse);
- Console.WriteLine(final_result);
- }
- public static int value { get; set; }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement