7586 | 2024. 01. 09 20:58:36 | ananász | Autókódolás | csharp | Elfogadva 50/50 | 28ms | 23500 KiB |
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace autokod
{
class Program
{
static void Main(string[] args)
{
long szam = long.Parse(Console.ReadLine());
List<int> szamjegyek = new List<int>();
long szam2 = szam;
int nulla = 0;
while (szam2 > 0)
{
if (szam2 % 2 == 0)
{
szamjegyek.Add(0);
nulla++;
}
else
{
szamjegyek.Add(1);
}
szam2 = szam2 / 2;
}
szamjegyek.Add(0);
List<int> szamjegyek2 = new List<int>(szamjegyek);
//növelés
int id = 0;
int egyesdb = 0;
while (id < szamjegyek.Count - 1 && !(szamjegyek[id] == 1 && szamjegyek[id + 1] == 0))
{
if (szamjegyek[id] == 1)
{
egyesdb++;
}
id++;
}
szamjegyek[id] = 0;
szamjegyek[id + 1] = 1;
long nagyobb = 0;
for (int i = 0; i < egyesdb; i++)
{
szamjegyek[i] = 1;
}
for (int i = egyesdb; i < id; i++)
{
szamjegyek[i] = 0;
}
for (int i = 0; i < szamjegyek.Count; i++)
{
nagyobb += szamjegyek[i] * (long)Math.Pow(2, i);
}
//csökkentés
long kisebb = 0;
if (nulla == 0)
{
kisebb = -1;
}
else
{
id = 0;
int nulladb = 0;
while (id < szamjegyek2.Count - 1 && !(szamjegyek2[id] == 0 && szamjegyek2[id + 1] == 1))
{
if (szamjegyek2[id] == 0)
{
nulladb++;
}
id++;
}
szamjegyek2[id] = 1;
szamjegyek2[id + 1] = 0;
for (int i = 0; i < nulladb; i++)
{
szamjegyek2[i] = 0;
}
for (int i = nulladb; i < id; i++)
{
szamjegyek2[i] = 1;
}
for (int i = 0; i < szamjegyek2.Count; i++)
{
kisebb += szamjegyek2[i] * (long)Math.Pow(2, i);
}
}
Console.WriteLine(kisebb);
Console.WriteLine(nagyobb);
Console.ReadKey();
}
}
}
Részfeladat | Összpont | Teszt | Verdikt | Idő | Memória | ||
---|---|---|---|---|---|---|---|
base | 50/50 | ||||||
1 | Elfogadva | 0/0 | 28ms | 20504 KiB | |||
2 | Elfogadva | 0/0 | 28ms | 21072 KiB | |||
3 | Elfogadva | 2/2 | 28ms | 21472 KiB | |||
4 | Elfogadva | 2/2 | 28ms | 21560 KiB | |||
5 | Elfogadva | 2/2 | 28ms | 21756 KiB | |||
6 | Elfogadva | 2/2 | 27ms | 22328 KiB | |||
7 | Elfogadva | 2/2 | 28ms | 22624 KiB | |||
8 | Elfogadva | 4/4 | 28ms | 23088 KiB | |||
9 | Elfogadva | 4/4 | 28ms | 23068 KiB | |||
10 | Elfogadva | 4/4 | 28ms | 23296 KiB | |||
11 | Elfogadva | 4/4 | 28ms | 22920 KiB | |||
12 | Elfogadva | 4/4 | 28ms | 22744 KiB | |||
13 | Elfogadva | 4/4 | 28ms | 23476 KiB | |||
14 | Elfogadva | 4/4 | 28ms | 23124 KiB | |||
15 | Elfogadva | 4/4 | 28ms | 22936 KiB | |||
16 | Elfogadva | 4/4 | 28ms | 23500 KiB | |||
17 | Elfogadva | 4/4 | 28ms | 23244 KiB |