Goharshady

New Member
ارسال ها
2,239
لایک ها
166
امتیاز
0
#1
خب
همونطور که همه می دونن همه ی المپیادها تقریباً کارشون تو مرحله ۲ تموم می شه و می رن دوره و حالشو می برن ولی ما کامپیوتری ها تازه تلاشمون برای رسیدن به دوره شروع می شه!
می خوام تو این تاپیک هر روز یک سوال مثل سوالهای مرحله ۳ بذارم. همونطور که احتمالا همه فهمیدن من دیگه مثل جوونی هام انرژی ندارم پس اگه یه روز سوال اون روز حل نشه من کلا ولش می کنم :) (ماکزیمم فرصت برای حل سوال = ۲۴ ساعت)

حالا سوال امروز:

اگر ۷۹ را در مبنای ۸ بنویسیم به ۱۱۷ می رسیم. حال اگر ۷۹ را برعکس کرده (۹۷) و آن را در مبنای ۹ بنویسیم باز هم به ۱۱۷ می رسیم! بزرگترین عدد کوچکتر از ۱۰ میلیون را بیابید که این خاصیت جالب عدد ۷۹ را دارد. جواب خود را در مبنای ۹ بنویسید.
 

erfankh

New Member
ارسال ها
202
لایک ها
89
امتیاز
0
#2
پاسخ : آمادگی برای مرحله ۳

85655
درست هست؟
اینم کدم:
کد
#include<iostream>
using namespace std;
int n=1000*10000-1;
int Mab(int x,int y){
 int c=0,k=1;
 while(x>0){c=c+k*(x%y);k*=10;x/=y;}
 return c;
} 
bool Is_J(int x){
 int a,b=0;
 a=Mab(x,8);
 while(x>0){b=b*10+x%10;x/=10;}
 b=Mab(b,9);
 if(a==b)return 1;
 return 0;
}
int main(){
 for(int i=n;i>-1;i--){
  if(Is_J(i)){cout<<Mab(i,9)<<endl;break;}
 }
 return 0;
}
 
آخرین ویرایش توسط مدیر

rezashiri

Well-Known Member
ارسال ها
1,458
لایک ها
325
امتیاز
83
#3
پاسخ : آمادگی برای مرحله ۳

منم همینو بدست آوردم ولی کدم حدودا 10 دقیقه طول می کشه!؟!
 

erfankh

New Member
ارسال ها
202
لایک ها
89
امتیاز
0
#4
پاسخ : آمادگی برای مرحله ۳

واسه من حدودا 6 ثانیه طول میکشه
 

Goharshady

New Member
ارسال ها
2,239
لایک ها
166
امتیاز
0
#5
پاسخ : آمادگی برای مرحله ۳

متأسفانه اشتباهه
RoseCode-Show
 

rezashiri

Well-Known Member
ارسال ها
1,458
لایک ها
325
امتیاز
83
#6
پاسخ : آمادگی برای مرحله ۳

نه جواب درسته شما سوالو بد مطرح کردید

ما اون عدد رو به مبنای 9 برده بودیم بلکه باید معکوسشو به مبنای 9 می بردیم ...

در اصل جواب 156535 میشه...
 

erfankh

New Member
ارسال ها
202
لایک ها
89
امتیاز
0
#7
پاسخ : آمادگی برای مرحله ۳

جوابم درست بود الان رفتم چک کردم
تو مبنا ی9 غلط می گرفت
ولی تو مبنا 8 گقت درسته
سوال بعدی لطفا:53:
 

Goharshady

New Member
ارسال ها
2,239
لایک ها
166
امتیاز
0
#8
پاسخ : آمادگی برای مرحله ۳

نه جواب درسته شما سوالو بد مطرح کردید

ما اون عدد رو به مبنای 9 برده بودیم بلکه باید معکوسشو به مبنای 9 می بردیم ...

در اصل جواب 156535 میشه...
من که خوب مطرح کردم ! شما بد برداشت کردین :)
 

Goharshady

New Member
ارسال ها
2,239
لایک ها
166
امتیاز
0
#9

erfankh

New Member
ارسال ها
202
لایک ها
89
امتیاز
0
#10
پاسخ : آمادگی برای مرحله ۳

من نفهمیدم سوال چی میگه
لطفا یکی توضیح بده
با تشکر:53:
 

rezashiri

Well-Known Member
ارسال ها
1,458
لایک ها
325
امتیاز
83
#11
پاسخ : آمادگی برای مرحله ۳

میگه که تنها عددی رو پیدا کنید که مجذورش به صورت 0-9-8-7-6-5-4-3-2-1 است که "-" ها رقم هستند.
 

rezashiri

Well-Known Member
ارسال ها
1,458
لایک ها
325
امتیاز
83
#12
پاسخ : آمادگی برای مرحله ۳

می شه بگید برنامه شما تو چند دقیقه جواب می ده؟!

یکم سخت نیست ؟!؟

یه راهنمایی می کنید.

مرسی.
 

Goharshady

New Member
ارسال ها
2,239
لایک ها
166
امتیاز
0
#13
پاسخ : آمادگی برای مرحله ۳

برای من با پایتون ۲ دقیقه طول می*کشه
ولی همون کد تو سی*پلاس*پلاس حداکثر ۳۰ ثانیه وقت خواهد گرفت.
 

erfankh

New Member
ارسال ها
202
لایک ها
89
امتیاز
0
#14
پاسخ : آمادگی برای مرحله ۳

جواب سوال آخر:
1389019170
سریع جواب میده
کد
#include<iostream>
#include<cmath>
using namespace std;
long long n;
int s[19];
long long int N(){
 long long n=0;
 for(int i=0;i<19;i++)n=n*10+s[i];
 return n;
}
bool Is_j(long long f){
 long long d;
 d=sqrt(f);
 if(d*d==f)return 1;
 return 0;
}
void A(int h){
 if(h==19){
  long long f=N();
  long long d=sqrt(f);
  if(Is_j(f))cout<<d<<endl;
  return;
  }
 for(int i=9;i>-1;i--){
  s[h]=i;
  A(h+2);
 }
}
int main(){
 s[0]=1;s[2]=2;s[4]=3;s[6]=4;s[8]=5;s[10]=6;s[12]=7;s[14]=8;s[16]=9;s[18]=0;
 A(1);
 cin>>n;
 return 0;
}
 
آخرین ویرایش توسط مدیر

Goharshady

New Member
ارسال ها
2,239
لایک ها
166
امتیاز
0
#15

erfankh

New Member
ارسال ها
202
لایک ها
89
امتیاز
0
#16
پاسخ : آمادگی برای مرحله ۳

ویرایش کردم
میاد یه آرایه 19 تایی میگیره
بعد اون خونه هایی رو که سوال گفته عدد گذاری میکنه سپس بقیه خونه هارو به صورت بازگشتی عدد میذاره
بعد از اون وقتی عدد گذاری کرد اون عدد در ارایه رو به یه عدد لانگ تبدیل میکنه بعد چک می کنه آیا جذر این عدد صحیح هست یا خیر
 
آخرین ویرایش توسط مدیر

erfankh

New Member
ارسال ها
202
لایک ها
89
امتیاز
0
#17
پاسخ : آمادگی برای مرحله ۳

کسی سوال نمیذاره
 

Goharshady

New Member
ارسال ها
2,239
لایک ها
166
امتیاز
0
#18

erfankh

New Member
ارسال ها
202
لایک ها
89
امتیاز
0
#19
پاسخ : آمادگی برای مرحله ۳

آقای گوهرشادی این سوال راه سریع داره؟
 

Goharshady

New Member
ارسال ها
2,239
لایک ها
166
امتیاز
0
#20
پاسخ : آمادگی برای مرحله ۳

همه*ی سوالهای اویلر رو می شه حداکثر تو یه دقیقه حل کرد ولی حالا اگه راهت یک ساعتم طول می کشه اشکال نداره:4:
 
بالا