T^T ()

题目入口
挺适合新手入门的,有小伙伴叫我帮忙刷题,惭愧花了两个小时只写了11道题,后面有时间会在更新的,有几个题懒得去查代码了,后面会一起放上来,想知道那道题的在下面留言并点赞,我会尽早放该题代码

A:水仙数

#include<stdio.h>
int main()
{
int m,n,k1,k2,k3,count;
while(scanf("%d %d",&m,&n)!=EOF)
{
for(count=0;m<=n;++m)
{
k1=m/100;
k2=(m-100*k1)/10;
k3=(m-100*k1-10*k2);
if(m==k1*k1*k1+k2*k2*k2+k3*k3*k3)
{
if(count!=0)
{
printf(" ");
}
printf("%d",m);
count++;
}
}
if(count==0)
printf("no\n");
else
printf("\n");
}
return 0;


}

B:素数判定

#include <iostream>

using namespace std;

//判定一个数是否为素数,是素数返回1,否则返回0
int check_prime_num(int arg)
{
    if(arg<=0)return 0;
    else if(arg==1) return 0;
    else if(arg==2)return 1;
    else
    {
        for(int j=2; j<arg; j++)
        {
            //取余等于0,说明除了1和本身外还有其他因数,说明他不是素数,直接返回零
            if(arg%j==0) return 0;
        }
        return 1;
    }
}

int main(void)
{
    int x,y,temp,flag=0;
    while(cin>>x>>y)
    {
        //c=0,y=0就退出
        if(x==0&&y==0)break;
        //判定在输入x,y之间的数后表达式结果为素数的个数
        for(int i=x; i<=y; i++)
        {
            temp=i*i+i+41;
            if(check_prime_num(temp)==1)
                ++flag;
        }
        //如果表达式结果素数的个数和输入的个数想等的话,就说明表达式结果都为素数
        if(flag==(y-x+1))cout<<"OK"<<endl;
        else cout<<"Sorry"<<endl;
        //必须清零,供下一个循环使用
        flag=0;
    }
    return 0;
}

C:进制转换

#include<stdio.h>
void binary(int, int);

int main()
{
    int N, R;
    while(scanf("%d %d", &N, &R)!=EOF)
    {
        if(N==0)
            printf("%d",0);
        else if(N<0)
        {
            printf("-");
            N=-N;
        }
        binary(N, R);
        printf("\n");
    }
    return 0;
}

void binary(int n, int r)
{
    int m;
    if(n==0)
        return;
    else
    {
        binary(n/r, r);
        m=n%r;
        if(m<10)
            printf("%d", m);
        else
            printf("%c", 'A'+m-10);
    }
}

D:人见人爱A^B

#include<cstdio>
int f(int a,int b)
{
    int t=1;
    while(b)
    {
        if(b%2!=0)
        {
            t=(t*a)%1000;
            b--;
        }
        a=a*a%1000;
        b/=2;
    }
    return t;
}
int main()
{
    int a,b;
    while(scanf("%d %d",&a,&b)&&a&&b)
    {
        printf("%d\n",f(a,b));
    }
}

E:三角形

#include <iostream>
using namespace std;
struct trig{
    double a;
    double b;
    double c;
};
int main(){
    int M;
    while (cin >> M){
        trig x[100];
        for (int i = 0; i < M; i++){
            cin >> x[i].a >> x[i].b >> x[i].c;
        }
        for (int i = 0; i < M; i++){
            if (x[i].a + x[i].b>x[i].c && x[i].c + x[i].a>x[i].b && x[i].b + x[i].c > x[i].a)
                cout << "YES" << endl;
            else
                cout << "NO" << endl;
        }
    }
    return 1;
}

F:超级楼梯

#include<bits/stdc++.h>
using namespace std;
int main() {
    int n;
    int m;
    cin>>m;
    while (m--) {
    	scanf("%d",&n);
        long long F[90];
        F[1] = 1;
        F[2] = 1;
        for (int i = 3; i < 90; i++) {
            F[i] = F[i - 1] + F[i - 2];
        }
        printf("%lld\n", F[n]);
    }
    return 0;
}

G:QAQ和台阶

#include<stdio.h>

int main() {
    int n;
    while (scanf("%d", &n) != EOF) {
        long long F[90];
        F[1] = 1;
        F[2] = 2;
        F[3]=4;
        for (int i = 4; i < 90; i++) {
            F[i] = F[i - 1] + F[i - 2]+F[i-3];
        }
        printf("%lld\n", F[n]);
    }
    return 0;
}

H:自上而下

#include <iostream>
using namespace std;
const long  maxsize=1008611+11;
long F[maxsize];
int main() {
	// your code goes here
	long n,m;
	F[0]=1;
	for(int i=1;i<=1008611;i++){
		F[i]=2*i*F[i-1]%1008611;
	}
	cin>>n;
	while(n--){
		cin>>m;
		cout<<F[m]<<endl;
	}
	return 0;
}

I:“你才智商低,你全家都智商低”

偷懒解法

#include<bits/stdc++.h>
using namespace std;
int main(){
  int n;
  cin>>n;
 while(n){
   cout<<n/2<<endl;
    cin>>n;
  }
return 0;
}

写了java发现没提供java提交。。。

import java.util.Scanner;
public class Main{
    public static int Water_max(int n){
        //先把手上的空瓶子3个为一组分好
        int k =0;
        while(n>=3){
        
        if(n %3==0){
            k =k+ n/3;
            n=n/3;
        }
        if(n % 3!=0){
            k=k+n/3;
            int t =n%3;
            n= n/3 +t;
        }
        }
        if(n==2){
            k=k+1;
        }
        return k;
       
    }
    public static void main(String[] args){
        Scanner sc = new  Scanner(System.in);
        while(sc.hasNext()){
            int num = sc.nextInt();
            if(num !=0){
               System.out.println( Water_max(num));   
            }
        }
    }
}

J:Lucky Number

#include <bits/stdc++.h>
using namespace std;

int main() {
	// your code goes here
	int n;
	int m;
	cin>>n;
	while(n--){
		cin>>m;
		if(m % 8 ==0){
			cout<<"Lucky number!"<<endl;
			continue;
		}
		long long summ=0,sum2=0;
    	while(m){
				summ+=m%10;
				sum2+=pow(m%10,2);
				m/=10;
	   }
	   if(summ%8==0 || sum2%8==0)cout<<"Lucky number!"<<endl;
	   else cout<<"What a pity!"<<endl;
	}
	return 0;
}

猜你喜欢

转载自blog.csdn.net/m0_37630059/article/details/84147327
T