Problemi 020
Kërkesa
Kemi një varg me numra ku të gjithë numrat përsëriten një numër çift herësh, me përjashtim të njërit i cili përsëritet një numër tek herësh. Të gjendet ky numër.
Referenca: https://www.codechef.com/problems/MISSP
Shembull
$ cat input.txt
2
3
1
2
1
5
1
1
2
2
3
$ python3 prog.py < input.txt
2
3
Janë 2 raste testimi, i pari ka 3 numra (njëri nën tjetrin), dhe i dyti ka 5 numra.
Zgjidhja 1
T = int(input())
for t in range(T):
n = int(input())
l = []
for i in range(n):
l.append(int(input()))
l.sort()
l.append(None)
i = 0
while i < n:
if l[i] != l[i+1]:
break
i += 2
print(l[i])
Sqarime
Krijojmë një listë dhe i fusim në të të gjithë numrat. Pastaj listën e
rendisim. Në këtë mënyrë, të gjithë numrat e barabartë i kemi përkrah
njëri-tjetrit dhe mund ti kalojmë dy e nga dy. Aty ku dy numrat e
radhës nuk janë të barabartë, i bie që të jetë numri që përsëritet
një numër tek herësh. Për të kapur edhe rastin kur ky numër ndodhet
në fund të listës (së renditur), kemi shtuar në list edhe një element
që është i ndryshëm nga gjithë numrat e tjerë: None
.
Zgjidhja 2
T = int(input())
for t in range(T):
n = int(input())
l = []
for i in range(n):
a = input()
if a in l:
l.remove(a)
else:
l.append(a)
print(l[0])
Sqarime
Krijojmë një listë bosh dhe çdo numër që lexojmë ose e shtojmë në listë nëse nuk është në të, ose e heqim nga lista nëse është në të. Në këtë mënyrë, në fund të këtij procesi do na ketë mbetur në listë vetëm ai numër që përsëritet një numër tek herësh.
Detyra
Në brinjët e një trekëndëshi barabrinjës vendosim disa pika të baraslarguara nga njëra-tjetra, dhe i bashkojmë me vija, si në figurë:
Le të quajmë të rregullt vetëm trekëndëshat që e kanë majën lart dhe bazën poshtë. Nqs ndarjet e brinjëve i quajmë 1 njësi, dhe trekëndëshi i madh e ka brinjën \(L\) njësi, sa trekëndësha të rregullt me brinjë \(K\) njësi (ku \(1 \leq K \leq N\)) ndodhen në figurë?
Referenca: https://www.codechef.com/problems/ZUBTRCNT
Shembull
$ cat input.txt
2
4 3
4 4
$ python3 prog.py < input.txt
Case 1: 3
Case 2: 1
Rezultati duhet të shfaqet në formën Case i:
dhe pastaj përgjigja.