Skip to main content

[ UVa ] 11991 - Easy Problem from Rujia Liu ?

  • এই সমস্যা তে আমাদের কে n এর যে ভিন্ন ভিন্ন মান দেয়া থাকবে তাদের কে নিয়ে আমাদেকে এমন ভাবে Adjacent List বানাতে হবে যেখানে n এর ভালুর সাথে সাথে ওই ভালুটার ইনডেক্স ও জমা রাখা যাবে । 
  • এখন আমাদের কে দেখতে হবে k এর মানটা v এর যে Adjacent List আছে সেটার থেকে ছোট নাকি বড় । 
  • যদি যদি ছোট হয় বা সমান হয় তবে আমরা সেটার v এর  ইনডেক্স প্রিন্ট করে দিব । আর যদি বড় হয় তবে ওই ইনডেক্স টা আমাদের Adjacent লিস্ট এ নাই । তাই আমাকের কে শূন্য প্রিন্ট করতে হবে । 
সমস্যা তে যে ইনপুট দেয়া আছে সেটা দিয়ে আমরা যদি Adjacent List বানায় তবে সেটা দেখতে এই রকম হবে
1  1
2  2  2
3  3
4
কোড :
/**
* Problem : 11991 - Easy Problem from Rujia Liu ?
* Verdict : Accepted.
* Time : 0.040 ms.
* Writer : Mehadi Hasan Menon.
* Date : 30.12.16.
**/
#include <iostream>
#include <vector>
#include <cstdio>
using namespace std;
const int mx = 1000005;
typedef pair <int, int> ii;
vector <ii> AdjList[mx];
int main()
{
freopen("input.txt", "r+", stdin);
freopen("output.txt", "r+", stdout);
int n, m, index, number;
int k, v; int ara[mx];
while(scanf("%d %d", &n, &m) != EOF)
{
for(index = 1; index <= n; index++)
{
scanf("%d", &number);
ara[index] = number;
AdjList[number].push_back(ii(number, index));
}
for(int i = 0; i < m; i++)
{
scanf("%d %d", &k, &v);
if(k > AdjList[v].size()) {
printf("0\n");
}
else {
ii data = AdjList[v][k - 1];
printf("%d\n", data.second);
}
}
// Clear every connection's
for(int i = 1; i <= n; i++) {
AdjList[ara[i]].clear();
}
}
return 0;
}
view raw 11991.cpp hosted with ❤ by GitHub

হ্যাপি কোডিং :)

Comments

Popular posts from this blog

উবুন্টুতে রুট পাসওয়ার্ড ভুলে তা রিকভার করার উপায় ।

যদি কেউ রুট পাসওয়ার্ড ভুলে যান তাহলে নিচের কাজ গুলো করে নতুন পাসওয়ার্ড সেট করতে পারবেন: প্রথমে পিসি রিস্টার্ট দিন । দিয়ে UP/DOWN করে kernel version সিলেক্ট করে e চাপুন । ব্ল্যাক Screen আসবে এবার একটা Space দিয়ে লিখুন “Single” [ Enter ] এরপর b চাপুন ফলাফল : লিনাক্সের Single user Mood এ চলে আসছেন । এখন লিখুন passwd root [ Enter ] এখন নতুন পাসওয়ার্ড খানা টাইপ করেন [ এন্টার ] আবার টাইপ করেন [ এন্টার ] কাজ শেষ , এবার reboot টাইপ করেন । এখন নতুন পাসওয়ার্ড দিয়ে লগইন করেন। পুনশ্চ : যদি আপনার উইন্ডোজ এর সাথে ডুয়েল বুট করা থাকে তবে এই প্রক্রিয়া কাজ করবে না ।

Fix The BIOS in this system is not fully ACPI compliant in Windows 7

এই সমস্যা সমাধান করার জন্য আপনি নিচের ধাপ গুলো অনুসরণ করুন। ধাপ ১ :  আপানর  কম্পিউটার এ উইন্ডোজ এর ডিস্ক থেকে বুট করুন । নীচের মত উইন্ডো আসলে Shift + F10 চাপুন । এর ফলে কমান্ড প্রম্প্ট ওপেন হবে। ধাপ ২ : এখন CMD তে নিচের কমান্ড গুলি ধারবাহিক ভাবে লিখুন C: bootrec /FixMbr bootrec /FixBoot bootrec /RebuildBcd exit  এখানে  C হলো যে ড্রাইভ এ উইন্ডোজ দেয়া আছে।  আপনার যদি অন্য কোনো ড্রাইভ ( D, E, F, ..... ) এ উইন্ডোজ দেয়া থাকে তবে আপনাকে C এর জায়গায় সেই ড্রাইভ এর নাম লিখতে হবে।  উপরের সব কমান্ড যদি সঠিক ভাবে বিল্ড হয় তবে আপনি আপনার কম্পিউটার রিস্টার্ট দিন।  দেখবেন আপনার সমস্যা সমাধান হয়ে গেছে :D