http://codeforces.com/problemset/problem/110/A
খুবই মজার একটা প্রোবলেম , তোমায় আগে জানতে হবে --- 4 & 7 হচ্ছে , লাকি ডিজিট। এখন , তোমায় - একটা সংখ্যা দেয়া থাকবে , সেই সংখ্যা এর মধ্যে - মোট কয়টা লাকি ডিজিট আছে ? সেই সংখ্যাটা'ও যদি - লাকি নাম্বার হয় , তাহলে আমাদের উত্তর হবে , "YES" নতুবা "NO" ।
চলো , উয়াহরণ দেখে নেই একটা ,ধরো , তোমায় একটা সংখ্যা দেয়া আছে - যেখানে মোট লাকি ডিজিট ( 4 অথবা 7) আছে 744 টি , এখন তোমায় বের করতে হবে এই 744 সংখ্যাটি লাকি নাম্বার কি না ?? তাহলে
আমাদের কি করতে হবে ??
count=744
খুবই মজার একটা প্রোবলেম , তোমায় আগে জানতে হবে --- 4 & 7 হচ্ছে , লাকি ডিজিট। এখন , তোমায় - একটা সংখ্যা দেয়া থাকবে , সেই সংখ্যা এর মধ্যে - মোট কয়টা লাকি ডিজিট আছে ? সেই সংখ্যাটা'ও যদি - লাকি নাম্বার হয় , তাহলে আমাদের উত্তর হবে , "YES" নতুবা "NO" ।
চলো , উয়াহরণ দেখে নেই একটা ,ধরো , তোমায় একটা সংখ্যা দেয়া আছে - যেখানে মোট লাকি ডিজিট ( 4 অথবা 7) আছে 744 টি , এখন তোমায় বের করতে হবে এই 744 সংখ্যাটি লাকি নাম্বার কি না ?? তাহলে
আমাদের কি করতে হবে ??
count=744
while(count!=0) { int p=count%10; if(p!=4&&p!=7) w=false; count=count/10; }744 এর এক একটা ডিজিট আলাদা করে দেখবো যে, সেটা 4 অথবা 7 ছাড়া অন্য কিছু কি না ? যদি হয় , তাহলে
w=false করে দেবো ।
চলো কোড দেখে ক্লিয়ার হয়ে নেই আমরা ----
#include<bits/stdc++.h>
//Nayeem Mollick Joy ,Applied Physics And Electronic Engineering , University of Rajshahi.
using namespace std;
typedef long long ll;
int main()
{
bool w = true;
string s;
cin >> s;
ll len = s.length();
ll count =0;
for(int i=0; i<len; i++)
{
if(s[i]=='7' || s[i]=='4')
{
count++;
}
}
if(count==0)
{
cout<<"NO"<<endl;
return 0;
}
while(count!=0)
{
int p=count%10;
if(p!=4&&p!=7)
w=false;
count=count/10;
}
if(w==true)
{
cout<<"YES"<<endl;
}
else
{
cout<<"NO"<<endl;
}
return 0;
}
No comments:
Post a Comment