December 25, 2013

കലണ്ടറുകൾ

ഒരു ഗൂഗിൾ പ്ലസ് പോസ്റ്റ് കണ്ടപ്പോൾ കലണ്ടറുകൾ എത്ര പ്രാവശ്യം വരുമെന്ന് നോക്കണമെന്നു തോന്നി. ഇതാണ് റിസൽട്ട്:
എഡി 1 മുതൽ 5000 വരെയുള്ള കലണ്ടറുകൾ ഓരോന്നും എത്രപ്രാവശ്യം വരുമെന്നെ കണക്ക് ഇതാ:
      1 bd30d102085f9899cb6c2c2060307f85
    167 36f01bef85a89cc8e951955441653a4e
    167 c197d36fcec25aced5da1e93368aa8c3
    168 f93d80b2ff5e304125310452ea18560e
    175 17e88e8be482fd24e98d2de1234b62ea
    177 048b5d0fc88e9f6768bfdc2d7580d8c7
    185 22465bceeda7b12a8e1dbfb8f8ce605d
    185 d4d9912ad523f8bcab60ee8a247e40eb
    535 8cf2c8f2157920ab14211ef3d51829de
    537 1a2b91b95b224758a3f2a88d60f96a89
    537 1ab991e95f86b6efa9364b926cff539c
    537 d50d4d721243c8b0163795fb8dfd3a3c
    538 b450c6e75884ad695c5f8a512b366414
    545 651a68a9dbc555d8629dc50dbdb23a54
    546 08c08487b9fed33686e68872ad833150
ആദ്യത്തെ അക്കം ഒരു കലണ്ടർ എത്ര പ്രാവശ്യം വരുന്നു എന്നും രണ്ടാമത്തേത് കലണ്ടറിന്റെ md5sum-ഉം ആണ്. ഇതനുസരിച്ച് ആകപ്പാടെ 15 കലണ്ടറുകൾ മാത്രമേ ഉള്ളൂ എന്നു കാണാം. 1752ലെ പരിഷ്കാരമില്ലാതിരുന്നെങ്കിൽ 14 എണ്ണമേ ഉണ്ടാകുമായിരുന്നുള്ളൂ. ഇരുന്നൂറിൽ കുറഞ്ഞ എണ്ണമുള്ള കലണ്ടറുകൾ അധിവർഷങ്ങളുടേതാണ്.

md5sum-ഉം കലണ്ടറുമായുള്ള മാപ്പിങ്, ആദ്യം md5sum, രണ്ടാമത് വർഷം എന്ന ക്രമത്തിൽ:
1a2b91b95b224758a3f2a88d60f96a89  - 1
d50d4d721243c8b0163795fb8dfd3a3c  - 2
b450c6e75884ad695c5f8a512b366414  - 3
048b5d0fc88e9f6768bfdc2d7580d8c7  - 4
651a68a9dbc555d8629dc50dbdb23a54  - 5
8cf2c8f2157920ab14211ef3d51829de  - 6
d4d9912ad523f8bcab60ee8a247e40eb  - 8
08c08487b9fed33686e68872ad833150  - 9
1ab991e95f86b6efa9364b926cff539c  - 10
22465bceeda7b12a8e1dbfb8f8ce605d  - 12
17e88e8be482fd24e98d2de1234b62ea  - 16
36f01bef85a89cc8e951955441653a4e  - 20
c197d36fcec25aced5da1e93368aa8c3  - 24
f93d80b2ff5e304125310452ea18560e  - 28
bd30d102085f9899cb6c2c2060307f85  - 1752

ഇത് എങ്ങനെ കണ്ടുപിടിച്ചു എന്ന് ചിന്തിക്കുന്നവർക്ക് വേണ്ടി:
ഒന്നു മുതൽ 5000 വരെയുള്ള കലണ്ടറുകളുടെ md5sum കണ്ടുപിടിക്കാൻ :
for i in `seq 5000`
do
        md5Sum=`cal $i | tail -n +2 | md5sum`
        echo "$md5Sum $i"
done > res

കലണ്ടറുകൾ ഓരോന്നും എത്രപ്രാവശ്യം വരുമെന്ന് കണ്ടുപിടിക്കാൻ :
awk -F"-" '{print $1}' res |sort  |uniq -c  |sort -n

md5sum-ഉം കലണ്ടറുമായുള്ള മാപ്പിങ് :
for m in `awk -F"-" '{print $1}' res |sort  |uniq`; do grep "$m" res | head -1  ; done | sort -n -k 3

വമ്പിച്ച ന്യൂഇയർ ഓഫർ :
വിൻഡോസിൽ ഇതുപോലെ പത്തുമിനിട്ടുകൊണ്ട് ഈ ഡേറ്റ കണ്ടുപിടിക്കാനുള്ള ബാച്ച് ഫയൽ ഉണ്ടാക്കുന്നവരുടെ ലാപ്‌‌ടോപ് ബാംഗ്ലൂരിൽ എത്തിച്ചാൽ ഫ്രീയായി ലിനക്സ് ഇൻസ്റ്റാൾ ചെയ്തു തരുന്നതാണ്

No comments:

Post a Comment