http://codeforces.com/problemset/problem/849/A
খুবই মজার একটা সমস্যা , ধরো - তোমায় একটা সিকুয়েন্স দেয়া থাকবে , এখন সেখানে - সেই সিকুয়েন্স কে এমন বিজোড় সংখ্যক ভাগে ভাগ করতে হবে যেনো , প্রত্যেক ভাগের প্রথম ও শেষ সংখ্যা বিজোড় এবং সিকুয়েন্স এর লেংথ'ও যেনো বিজোড় হয় ।। ধরো , একটা উদাহরণ দেই যেমন ----
খুবই মজার একটা সমস্যা , ধরো - তোমায় একটা সিকুয়েন্স দেয়া থাকবে , এখন সেখানে - সেই সিকুয়েন্স কে এমন বিজোড় সংখ্যক ভাগে ভাগ করতে হবে যেনো , প্রত্যেক ভাগের প্রথম ও শেষ সংখ্যা বিজোড় এবং সিকুয়েন্স এর লেংথ'ও যেনো বিজোড় হয় ।। ধরো , একটা উদাহরণ দেই যেমন ----
1 0 1 5 1 , এখানে একে মোট তিন'টা (বিজোড় সংখ্যক) ভাগে ভাগ করা যাবে যেখানে প্রথম ও
শেষ সংখ্যা বিজোড় ও তার লেংথ'ও বিজোড় হয় ।।
(1 0 1) , (5) , (1)
আশা করি , কাহিনী কিছুটা হলেও পরিষ্কার ।। তো , তোমার কাজ হইলো - যদি , দেয়া সিকুয়েন্স এইভাবে প্রকাশ করা
সম্ভব হয় - তাহলে প্রিন্ট করবে , Yes আর না হলে - No ||
তো , এই তিন'টা শর্ত দিয়ে চেক করে যদি -কোনো সিকুয়েন্স ঠিক পাই , তাহলে - হ্যা আর না হলে না । ।
প্রথম সংখ্যা বিজোড়
শেষ সংখ্যা বিজোড়
সিকুয়েন্স এর লেংথ বিজোড়
এই তিন'টি শর্ত দিয়ে চেক করে দেখবো , চলো কোড দেখি এইবার
IN C++ LANGUAGE...................
#include<bits/stdc++.h>
using namespace std;
#define N 510
int main() {
cin.sync_with_stdio(false);
int n, num[N];
while (cin >> n) {
for (int i = 0; i < n; i++) {
cin >> num[i];
}
if (num[0] % 2 == 1 && num[n - 1] % 2 == 1 && n % 2 == 1) {
cout << "YES" << endl;
}
else {
cout << "NO" << endl;
}
}
return 0;
}
IN C# LANGUAGE..................
using System;
public class Test
{
public static void Main()
{
int n=Convert.ToInt32(Console.ReadLine());
int[] num=new int[n];
string s=Console.ReadLine();
string[] values=s.Split(' ');
for (int i = 0; i < n; i++) {
num[i]=int.Parse(values[i]);
}
if (num[0] % 2 == 1 && num[n-1] % 2 == 1 && n%2==1) {
Console.WriteLine("YES");
}
else {
Console.WriteLine("NO");
}
}
}
No comments:
Post a Comment