Monday, 14 March 2016

গুনতে পারবে কি ? ( Can You Count? ) Codemarshal Problem Solution.

তোমরা হয়ত মি. হতাশ এর কথা শুনে থাকবে। লোকটা ছোট বেলায় শুধু বড় বড় কথা বলত আর চিন্তা করত! একদিন সে ভাবলো একদিনের জন্য সে ছুটি নিবে। কোন কাজ নেই , বেচারা আকশের দিকে তাকিয়ে আছে। হটাৎ করে সে একটা তারার দিকে তাকিয়ে ভাবল , "এটা কি আসলেই এমন? নাকি ভেজাল আছে?" যেমনি ভাবা তেমনি কাজ …… ভেজাল তাকে প্রমাণ করতেই হবে । অবশেষে অনেক সাধনা করে আইন্সটাইন এর রিলেটিভিটি ঘাটাঘাটি করতেই সে বুঝতে পারল “এই তারা আসলে সেই তারা , আমরা তো আসলে একটা টাইম মেশিনের দিকে তাকিয়ে আছি” – অসাধারন …! তাই নয় কি ? মানুষ এত চেস্টা করে টাইম মেশিন বানাতে চায় , কিন্তু টাইম মেশিন তো চোখের সামনে, দেখা যায় কিন্তু ব্যবহার করা যায় না ,আকাশ তো পুরোটাই একটা টাইম মেশিন ।
কিন্তু একটা কাজ ধরেছে মি. হতাশ, হতাশ না হয়ে বাড়ি ফিরলে কি হয়? তো কি করা যায়? হতাশ হবার আশায় সে তারা গোনা আরম্ভ করল। কিন্তু তারা গুনে কি আর শেষ হয়? সে তারা গোনে আর লিখে এ তারাটা তার কতটুকু ভালো লেগেছে। প্রত্যেক তারারই ভালো লাগার একটা মান আছে। কোন দুটো তারারই ভালো লাগার মান সমান হতে পারে না। কিন্তু মি. হতাশ বার বার ভুল করে একই তারার মান খাতায় লিখে ফেলে, আকাশ তো আর ছোট না । আকাশ দেখেই তো মানুষ অসীমকে দেখতে পায়।
তোমার কাছে এখন মি. হতাশ এর খাতার ভ্যালু গুলো আছে, তোমার বলতে হবে মি. হতাশ হতাশ হবার আগে কতগুলো আলাদা তারা গুনেছে। চিন্তা করো না, তারা গুনতে গুনতেই হয়ত তুমি একদিন গ্যালিলিও , আইন্সটাইন হয়ে যাবা। যাই হোক গ্যালিলিও, আইন্সটাইন এর কম্পিঊটার ছিলো না, তোমার আছে ।
You may have heard the name of Mr. Hotash. When he was young he used to talk like elders and ponder!!! Once he thought he'll take a-one day leave. With no work at hand, he was staring at the sky. Suddenly looking at a star he thought, Is it really like that? Or there's some problems with the star. Thus he thought it's a must to prove that the star has some problems. So doing a hell of research at last he found from the Einstein's Theory of Relativity, ”All these stars are from the past, We are looking at a cosmic time machine” - Great...!!! Isn't it?
Humans are trying so much to build one time machine, but it's right in front of their eyes, they can see it but can't use it, the whole sky is one big time machine. At last Mr. Hotash found some work, but does it suit Mr. Hotash to return to his home without being disappointed.
So thinking of that else he can do he found that counting stars will be great job to become disappointed. But is it possible to count all the stars! He started to count the stars and for each of them writes a satisfaction index that how much he liked the stars. Every star has a satisfaction index and they are unique. But Mr. Hotash did a mistake, he wrote satisfaction index of some stars multiple times since the sky is too big. Humans define infinity using the sky.
Now you are given the satisfaction indexes written in the notebook of Mr. Hotash. Can you count the number of stars Mr. Hotash noted before he became disappointed. Don't worry, by counting this values you may one day become Galileo or Einstein. Galileo or Einstein didn't have computers in their time but you have one in front of you.

ইনপুটের বর্ণনা

ইনপুট ফাইল এর প্রথম লাইন এ থাকবে একটি ধনাত্মক পূর্ণ সংখ্যা T ( T <= 1000 ) যা ফাইল এ কতগুলো ইনপুট সেট আছে তা বুঝাবে। এর পরে একটা একটা করে প্রতিটি ইনপুট সেট থাকবে। প্রতিটা ইনপুট সেটের প্রথম লাইন এ একটি ভ্যালু N ( N <= 10000 ) থাকবে যেটা পরর্তী লাইন এ কতগুলো ভ্যালু আছে তা জানাবে। পরবর্তী লাইনের ভ্যালু গুলোই মি. হতাশের লেখা ভ্যালু। মি. হতাশের প্রত্যেক ভ্যালুর মান ভ্যালুর মান -10 12 থেকে 10 12 এর মধ্যে হবে।

Input Specification

The first line of input will contain an integer T ( T <= 1000 ), which will indicate the number of testcases in the file. Each of the testcases will start with an integer N ( N <= 10000 ), which will indicate the number of values in each case. The next N values are the written values of Mr. Hotash.
Each value written by Mr. Hotash will be within -10 12 to 10 12

আউটপুট এর বর্ণনা

আউটপুটে কেস নাম্বার এবং উত্তরটি লিখতে হবে। বিস্তারিত উদাহরনে দেখ।

Output Specification

Each output will show the case number and the answer of the testcase. Please see the sample cases for the exact formatting.

Sample

InputOutput
3 3 1 2 3 5 0 1 0 2 3 2 1000 1000Case 1: 3 Case 2: 4 Case 3: 1

Solution:

#include<bits/stdc++.h>
using namespace std;
/*
    *
    * Prosen Ghosh
    * American International University - Bangladesh (AIUB)
    *
*/
int main(){

    long long a,T,n;

    scanf("%lld",&T);
    for(int t = 1; t <= T; t++){
        set<long long> res;
        scanf("%lld",&n);
        for(int i = 0; i < n; i++){
            scanf("%lld",&a);
            res.insert(a);
        }
        printf("Case %lld: %d\n",t,res.size());
    }
    return 0;
}

No comments:

Post a Comment