Advertisement
sokolova4

G

Jan 9th, 2021
482
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 1.05 KB | None | 0 0
  1. using System;
  2. internal class ChristmasArray : BaseArray
  3. {
  4.     public ChristmasArray(int[] x) : base(x)
  5.     {
  6.  
  7.     }
  8.     public override int this[int number] {
  9.         get {
  10.            
  11.             int ans = number;
  12.             foreach (var i in array)
  13.             {
  14.                 if (i < number && ((number-i)<(number-ans) || ans== number))
  15.                 {
  16.                     ans = i;
  17.                 }
  18.             }
  19.             if (ans == number)
  20.             {
  21.                 throw new ArgumentException("Number does not exist.");
  22.             }
  23.             return ans;
  24.         }
  25.     }
  26.  
  27.     public override double GetMetric()
  28.     {
  29.         int n = 0;
  30.         int ans = 0;
  31.         for(int i=0; i<array.Length; i++)
  32.         {
  33.             n += array[i].ToString().Length;
  34.             int k = array[i];
  35.             while (k > 0)
  36.             {
  37.                 if (k % 10 == 6)
  38.                 {
  39.                     ans++;
  40.                 }
  41.                 k /= 10;
  42.             }
  43.         }
  44.         return ans*1.0 / n;
  45.     }
  46.  
  47. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement