ارسال ها
38
لایک ها
3
امتیاز
0
#81
[center:4ba4817a38]=>M<=
ببخشید که جواب را دیر میذارم. کد من!
[/center:4ba4817a38]
 

Goharshady

New Member
ارسال ها
2,239
لایک ها
166
امتیاز
0
#82
چرا اینجا خوابیده؟
سوالو حل کنین دیگه. احسان که راهشو گفت.
 

Olympiad

New Member
ارسال ها
1,268
لایک ها
134
امتیاز
0
#83
الو، الو .....
یکی یه سوال دیگه بذاره...
 

Goharshady

New Member
ارسال ها
2,239
لایک ها
166
امتیاز
0
#84
Olympiad گفت
الو، الو .....
یکی یه سوال دیگه بذاره...
در حال حاضر گذاشتن سوال دیگه خلاف قوانینه
چون حداکثر دو تا سوال بی جواب می تونیم داشته باشیم
 
ارسال ها
38
لایک ها
3
امتیاز
0
#85
خوب با این حساب ، جواب برای 1,000,000,000 می شود :
. حالا حاصل همچون چیزی را چگونه میتوان به دست آورد ؟ برنامه ای که براش نوشتم ، حدود 15 ثانیه زمان می برد اما تایم لیمیت 2 ثانیه است! بعدش با تقسیم توان ها کار کردم اما جواب نداد
می شود راهنمایی بکنید ؟
 

Goharshady

New Member
ارسال ها
2,239
لایک ها
166
امتیاز
0
#86
Sepehrmousavi گفت
خوب با این حساب ، جواب برای 1,000,000,000 می شود :
. حالا حاصل همچون چیزی را چگونه میتوان به دست آورد ؟ برنامه ای که براش نوشتم ، حدود 15 ثانیه زمان می برد اما تایم لیمیت 2 ثانیه است! بعدش با تقسیم توان ها کار کردم اما جواب نداد
می شود راهنمایی بکنید ؟
برای محاسبه ی توان چیکار می کنید؟
O(lgn) می زنید؟
من ایده ام این بود که برای همه ی توانهای ۱۰ این مقدار را ذخیره کردم. اینطوری می شهO(logn) نه O(lgn) . همین ضریب باعث می شه تایم نشین. هر چند Order فرقی نداره.
به این میگن تقلب هوشمندانه!!
 

Olympiad

New Member
ارسال ها
1,268
لایک ها
134
امتیاز
0
#87
قوانين ماراتن را نقض ميكنيم !!!!
يكي يه سوال بذاره .................. (آسون باشه
(زياد سخت نباشه...))
 

rezashiri

Well-Known Member
ارسال ها
1,458
لایک ها
325
امتیاز
83
#88
[center:7493817c90]
[/center:7493817c90]دو تا سوال خیلی آسون


الف) اگر داشته باشیم
,
باشد سه رقم سمت راست
را بیابید.

ب) برنامه ای بنویسید که عددی حداکثر 6 رقمی که یک رقم آن افتاده است را از ورودی گرفته و کوچکترین عدد اولی که ارقام آن شبیه آن عدد است را در خروجی چاپ کند و اگر امکان نداره چاپ کنه no.

مثال :
ورودی
1-1
خروجی
101
ورودی
2-2
خروجی
no
 

Olympiad

New Member
ارسال ها
1,268
لایک ها
134
امتیاز
0
#89
[center:f34a0792a6]



الف )

کد
#include <iostream>
#include <conio.h>
using namespace std;
  int main()
    {
	 int a[1389];
	 a[0]=32;
	 a[1]=24;
	 for(int i=2;i<1389;i++)
	  a[I]=(a[i-1]%1000)*(a[i-1]%1000)*(a[i-2]%1000);
	 cout<<a[1388]%1000;
	 getch();
	 return 0;
    }
[/I]​
[/center:f34a0792a6]

 

Olympiad

New Member
ارسال ها
1,268
لایک ها
134
امتیاز
0
#90
[center:cba61ca378]

ب)


کد
#include <iostream>
#include <conio.h>
 using namespace std;
 int po(int m,int n)
   {
	int ans=1;
	for(int i=1;i<=n;i++)
	 ans*=m;
	return ans;
   }
   int ip(int k)
    {
	 if(k<=1)
	  return 0;
	 else
	  {
	    for(int i=2;i*i<=k;i++)
		if(k%i==0) 
		return 0;
	 return 1;
	  }
    }
  int main()
    {
	 string a;
	 cin>>a;
	 int r=-1,p;
	 long int t=0;
	 for(int i=a.length()-1;i>=0;i--)
	  {
	   r++;
	   if(a[i]!='-')
		{
		 a[i]-=48;
		 t+=po(10,r)*a[i];
		}
	  }
	  for(int i=a.length()-1;i>=0;i--)
	   if(a[i]=='-')
	    p=i;
	  for(int i=0;i<=9;i++)
	   if(ip(t+(po(10,a.length()-1-p))*i))
	    {
		 cout<<t+(po(10,a.length()-1-p)*i);
		 getch();
		 return 0;
	    }
	  cout<<"No";
	 getch();
	 return 0;
    }
[/center:cba61ca378]
 
ارسال ها
38
لایک ها
3
امتیاز
0
#91
Olympiad گفت
[center:9aa2f34c30]



الف )

کد
#include <iostream>
#include <conio.h>
using namespace std;
  int main()
    {
	 int a[1389];
	 a[0]=32;
	 a[1]=24;
	 for(int i=2;i<1389;i++)
	  a[I]=(a[i-1]%1000)*(a[i-1]%1000)*(a[i-2]%1000);
	 cout<<a[1389]%1000;
	 getch();
	 return 0;
    }
[/I]​
[/center:9aa2f34c30]

ببخشید ولی آخرش باید a[1388] % 1000 می گذاشتی! این هم کد من برای این سوال.
 

Olympiad

New Member
ارسال ها
1,268
لایک ها
134
امتیاز
0
#92
Sepehrmousavi گفت
Olympiad گفت
[center:687f3579ad]



الف )

کد
#include <iostream>
#include <conio.h>
using namespace std;
  int main()
    {
	 int a[1389];
	 a[0]=32;
	 a[1]=24;
	 for(int i=2;i<1389;i++)
	  a[I]=(a[i-1]%1000)*(a[i-1]%1000)*(a[i-2]%1000);
	 cout<<a[1389]%1000;
	 getch();
	 return 0;
    }
[/I]​
[/center:687f3579ad]

ببخشید ولی آخرش باید a[1388] % 1000 می گذاشتی! این هم کد من برای این سوال.
تكذيب ميكنم
 

rezashiri

Well-Known Member
ارسال ها
1,458
لایک ها
325
امتیاز
83
#93
[center:a78ef39bf2]
[/center:a78ef39bf2]

الف) برنامه ای بنویسید که n را از ورودی گرفته و تعداد ارقام به کار رفته از اعداد 1 تا n را محاسبه کند.

ب) http://acm.sgu.ru/problem.php?contest=0&problem=108
 

Olympiad

New Member
ارسال ها
1,268
لایک ها
134
امتیاز
0
#94
[center:65caadb3f7]


الف)


کد
#include <iostream>
#include <conio.h>
 using namespace std;
  long long t(long long k)
    {
	 long long s=0;
	 while(k>0)
	   {
	    s++;
	    k/=10;
	   }
	 return s;
    }
  int main()
   {
	 long long r=0,n;
	 cin>>n;
	 for(int i=1;i<=n;i++)
	  r+=t(i);
	 cout<<r;
	  getch();
	 return 0;
    }
[/center:65caadb3f7]
 

Goharshady

New Member
ارسال ها
2,239
لایک ها
166
امتیاز
0
#95
[center:e9cb230e6b]r[/center:e9cb230e6b]
طول و عرض و ارتفاع دو تا مکعب مستطیل به شما داده می شه. شما باید بگین می شه یکی رو گذاشت تو اون یکی یا نه.
http://www.z-trening.com/tasks.php?show_task=5000000143

مثالها را با دقت بخوانید.
 

Olympiad

New Member
ارسال ها
1,268
لایک ها
134
امتیاز
0
#96
[center:90a0692192]
r
[/center:90a0692192]
کد
#include <iostream>
 using namespace std;
  int main()
   {
	  int a[3],b[3];
	  for(int i=0;i<3;i++)
	   cin>>a[i];
	  for(int i=0;i<3;i++)
	   cin>>b[i];
	  for(int i=1;i<=3;i++)
	   for(int j=0;j<2;j++)
	    if(a[j]>a[j+1])
		 {
		   int k;
		   k=a[j];
		   a[j]=a[j+1];
		   a[j+1]=k;
		 }
	  for(int i=1;i<=3;i++)
	   for(int j=0;j<2;j++)
	    if(b[j]>b[j+1])
		 {
		   int k;
		   k=b[j];
		   b[j]=b[j+1];
		   b[j+1]=k;
		 }
	   if(a[0]>b[0]&&a[1]>b[1]&&a[2]>b[2]||a[0]<b[0]&&a[1]<b[1]&&a[2]<b[2])
	    cout<<"DA"<<endl;
	   else
	    cout<<"NE"<<endl;
	 return 0;
    }
 

Olympiad

New Member
ارسال ها
1,268
لایک ها
134
امتیاز
0
#97

rezashiri

Well-Known Member
ارسال ها
1,458
لایک ها
325
امتیاز
83
#99
هنوز خودم کد سوال قبلی رو نزدم ولی فکر کنم نظریه اعدادی بشه حلش کرد مثلا برای اعداد دو رقمی با حل این معادله :


اگه جواب نداشت می شه جزو اعداد مورد نظر مثلا برای x=20 جواب نداره.
-----------------------------------------------------------------------------------------------------------

[center:9401cd8762]


برنامه ای بنویسید که عددی مثبت را دریافت کرده و اگر رقم یکان تمام عوامل اول آن به 3 ختم می شد YES و در غیر این صورت NO را در خروجی چاپ کند.

ورودی
10
13
27
خروجی
NO
YES
YES​
[/center:9401cd8762]
 

Olympiad

New Member
ارسال ها
1,268
لایک ها
134
امتیاز
0
[center:133c5b2295]
[/center:133c5b2295]

کد
#include <iostream>
#include <conio.h>
using namespace std;
int f(int k)
  {
    if(k%10==3)
	return 1;
    return 0;
  }
int ip(int k)
  {
    if(k<=1)
	return 0;
    if(k==2)
	return 1;
    for(int i=2;i*i<=k;i++)
	if(k%i==0)
	 return 0;
    return 1;
   }
  int main()
   {
	 int n;
	 cin>>n;
	 if(n==1)
	   {
		cout<<"No";
		getch();
		return 0;
	   }	
	 for(int i=2;i<=n;i++)
	  if(n%i==0&&ip(i)&&!f(i))
	   {
		cout<<"No";
		getch();
		return 0;
	   }
	  cout<<"Yes";
	  getch();
	 return 0;
    }
 
بالا