新生第二次练习代码

楼梯

递归

#include <iostream>
using namespace std;
int n;
int res;
void jump(int k)
{
	if (k == n) res ++;
	else if (k < n)
	{
		jump(k + 1);
		jump(k + 2);
	}
}
int main()
{
	cin >> n;
	jump(0);
	cout << res << endl;
	return 0;
}

斐波那契数列

#include<iostream>
#include<cstdio>
using namespace std;
int main()
{
	int t;
	int a=1;
	int b=2;
	int c;
	cin>>t;
	if(t==1)
		cout<<"1"<<endl;
    else if(t==2)
		cout<<"2"<<endl; 
	else
    {
        for(int i=1;i<t-1;i++)
        {
            c=a+b;
            a=b;
            b=c;
        }
	    cout<<c<<endl;
    }
    return 0;
}

计算时间

#include <stdio.h>
#include <stdlib.h>
int main()
{
    int h1,m1,h2,m2;
    while(scanf("%d%d%d%d",&h1,&m1,&h2,&m2)!=EOF)
    {
        int sum1,sum2;
        sum1=h1*60+m1;
        sum2=h2*60+m2;
        if(sum2-sum1<0)
            sum2+=1440;
        int hr,mn;
        hr=(sum2-sum1)/60;
        mn=(sum2-sum1)%60;
        printf("%d %d\n",hr,mn);
    }
    return 0;
}

666

#include <iostream>
#include <algorithm>
using namespace std;
int main()
{
	int n;
	cin >> n;
	while (n --)
	{
		string a;
		cin >> a;
		if (a == "6") cout << "36";
		else if (a == "66") cout << "4356";
		else
		{
		    for (int i = 1; i < a.size(); i ++)
			cout << '4';
			cout << '3';
			for (int i = 1; i < a.size(); i ++)
			cout << '5';
			cout << '6';
		}
		cout << endl;
	}
	return 0;
}

gl哥哥的收藏

#include<iostream>
#include<set>
using namespace std;
int main()
{
    set<int> s;
    int i, x, n;
    cin>>n;
    for(i=0; i<n; i++){
        cin>>x;
        s.insert(x);
    }
    cout << s.size() << endl;
}

碱基配对

#include<iostream>
using namespace std;
int main()
{
	int a;cin>>a;
	string b;
	cin>>b;
	for(int i=0;i<b.size();i++)
	{
		if(b[i]=='A') {b[i]='T';continue;}
		if(b[i]=='T') {b[i]='A';continue;}
		if(b[i]=='C') {b[i]='G';continue;}
		if(b[i]=='G') {b[i]='C';continue;}
	}
	cout<<b;
	return 0;
}

今天星期几?

#include <iostream>
using namespace std;
int main()
{
	string a;
	cin >> a;
	if (a == "Monday")
	    cout << 1 << endl;
	else if (a == "Tuesday")
	    cout << 2 << endl;
	else if (a == "Wednesday")
	    cout << 3 << endl;
	else if (a == "Thursday")
	    cout << 4 << endl;
	else if (a == "Friday")
	    cout << 5 << endl;
	else if (a == "Saturday")
	    cout << 6 << endl;
	else
        cout << 7 << endl;
	return 0;
}

简单统计

#include <stdio.h>
int main()
{
    int t,L,R,i,con=0;
    scanf("%d",&t);
    while(t--)
    {
        con=0;
        scanf("%d %d",&L,&R);
        for(i=L;i<=R;i++)
        {
            if(i%10==2){con++;}
            if(i/10%10==2){con++;}
            if(i/100%10==2){con++;}
            if(i/1000%10==2){con++;}
        }
        printf("%d\n",con);
    }
    return 0;
}

dd的变量命名

#include<iostream>
using namespace std;
int main()
{
	int num;
	cin>>num;
	int i=1;
	while(num--)			
		cout<<'a'<<i++<<endl;
	return 0;	
}

真正的热爱

#include <iostream>
using namespace std;
string a;
int diff, same;
int main()
{
	string res;
	cin >> res;
	while (cin >> a)
	{
		if (a == res) same ++;
		else diff ++;
	}
	cout << diff << endl << same;
	return 0;
}

找闰年

#include<stdio.h>
int main()
{
	for(int a=1900;a<=2000;a++)
    {
		if(a%4==0 &&a%100!=0) 
			printf("%d\n",a);
		else if(a%400==0) 
			printf("%d\n",a);
	}
	return 0;
}

排序

#include<iostream>
using namespace std;
const int N=1010;
int a[N];
void sort(int l,int r,int a[])
{
	if(l>=r) return;
	int i=l-1;int j=r+1; int x=a[(l+r)/2];
	while(i<j)
	{
		do i++;while(a[i]<x);
		do j--;while(a[j]>x);
		if(i<j) swap(a[i],a[j]);
	}
	sort(l,j,a);
	sort(j+1,r,a);

}
int main()
{
	int n;
	cin>>n;
	for(int i=0;i<n;i++)
	  cin>>a[i];
	sort(0,n-1,a);
	for(int i=0;i<n;i++)
	  cout<<a[i]<<' ';
	return 0;
}

掷骰子

#include <iostream>
#include <algorithm>
using namespace std;
int main()
{
	int x, y;
	cin >> x >> y;
	int ans = max(x, y);
	int a = 7 - ans;
	if (a && (a != 6))
	    cout << a / __gcd(a, 6) << '/' << 6 / __gcd(a, 6) << endl;
	else if (a == 6)
	    cout << 1 << '/'  << 1 << endl;
	else 
        cout << 0 << '/' << 1 << endl;
	return 0;
 }

国土炼成阵

#include <iostream>
using namespace std;
int main()
{
	int k;
	cin >> k;
	while (k --)
	{
		int n, m;
		cin >> n >> m;
		if (m <= 2) 
            cout << "NO";
		else if (m > 2 && m < n && !(n % m))
             cout << "YES";
		else 
            cout << "NO";
		cout << endl;
	}
	return 0;
}

兰大侠打怪兽

#include<iostream>
#include<algorithm>
using namespace std;
int main()
{
	int q;
	cin>>q;
	while(q--)
	{
		int a[3];
		for(int i=0;i<3;i++)
			cin>>a[i];
		sort(a,a+3);
		int sum=a[0]+a[1]+a[2];
		if(sum%9==0&&a[0]>=sum/9) 
            cout<<"YES"<<endl;
		else 
            cout<<"NO"<<endl;
	} 
	return 0;
}

LR最爱巧克力

#include<stdio.h>
int main()
{
	int a[1000],n,i,j=0;
	scanf("%d",&n);
	for(i=0;i<n;i++)
        scanf("%d",&a[i]);
	long long t = 0,tol =1;
	for(i=0;i<n;i++)
    {
		if(j==1&&a[i]==0)
            t++;
		if(a[i]==1)
        {
			j = 1;
			if(t>0)tol = tol * (t + 1);
			t = 0;
		}
	}
	if(j == 0)
        printf("0\n");
	else
        printf("%lld\n",tol);
	return 0;
}

AC数加1

#include<iostream>
using namespace std;
int  main()
{
	int q;
	cin>>q;
	while(q--)
	{
		long long num;
		cin>>num;
		long long sum=0;
		while(num>0)
		{
			
			int yushu = num%2;
			if(yushu==1) sum++;
			num/=2;
		}
		cout<<sum<<endl;
	}
	return 0;
}

喜欢数学题的小赵和小兰

#include <bits/stdc++.h>
using namespace std;
int main()
{
    int _;
    scanf("%d", &_);
    while(_ --)
    {
        int n, m;
        scanf("%d", &n);
        int x1 = 0, x2 = 0;
        for(int i = 1; i <= n; i ++)
        {
            int x;
            scanf("%d", &x);
            if(x % 2 == 0) x2 ++;
            else x1 ++;
        }
        int y1 = 0, y2 = 0;
        scanf("%d", &m);
        for(int i = 1; i <= m; i ++)
        {
            int x;
            scanf("%d", &x);
            if(x % 2 == 0) y2 ++;
            else y1 ++;
        }
        printf("%lld\n", (long long )x1 * y1 + (long long)x2 * y2);
    }
    return 0;
}

明星LR

#include <iostream>
using namespace std;
const int mod = 1e9 + 7;
int col[100010],row[100010];
int main()
{
    int n, m;
    cin >> n >> m;
    long long cntx = n, cnty = m;
    while (m--)
    {
        int x, y;
        cin >> x >> y;
        if (!row[x])
            row[x]++, cntx--;
        if (!col[y])
            col[y]++, cnty--;
        long long ans = (cntx * cnty) % mod;
        cout << ans << endl;
    }
    return 0;
}

没有0的生活

#include <bits/stdc++.h>
using namespace std;
int f(int x)
{
    string s = to_string(x);
    int res = 0;
    for(int i = 0; i < s.size(); i ++)
        if(s[i] != '0')
            res = res * 10 + s[i] - '0';
    return res;
}
int main()
{
    int a, b;
    scanf("%d%d", &a, &b);
    if(f(a + b) == f(a) + f(b)) puts("YES");
    else puts("NO");
    return 0;
}

良心的签到

#include<bits/stdc++.h>
using namespace std;
int a[10020]={0};
int main()
{
	int n,t,cnt=1;
	cin>>n;
	for(int q=0;q<n;q++)
		cin>>a[q];
	cin>>t;
	for(int q=0;q<n;q++)
		if(t>a[q])
            cnt++;
	cout<<cnt<<endl;
	return 0;
}

矩阵转置

#include<bits/stdc++.h>
using namespace std;
int main()
{
	long long a[3][3],q,w,b[3][3];
	for(q=0;q<3;q++)
    {
		for(w=0;w<3;w++)
        {
			cin>>a[q][w];
			b[w][q]=a[q][w];
		}
	}
	for(q=0;q<3;q++)
    {
		for(w=0;w<3;w++)
        {
			cout<<b[q][w];
			cout<<" ";
		}
		cout<<endl;
	}
	return 0;
}

猴子吃桃

#include<iostream>
using namespace std;
int main()
{
	int q;cin>>q;q-=1; 
	int i=1;
	while(q--)
	{
		i+=1;
		i*=2;
	}
	cout<<i;
	return 0;
}

等差数列求和

#include<iostream>
using namespace std;
long long sum;
int main()
{
	int a;
	cin>>a;
	int start=2;
	for(int i=0;i<a;i++)
	{
		sum+=start;
		start+=3;
	}
	cout<<sum; 
	return 0;
}

排序plus

#include<iostream>
#include<algorithm>
using namespace std;
const int N=1000010;
int a[N];
int main()
{
	int n;cin>>n;
	for(int i=0;i<n;i++)
	cin>>a[i];
	sort(a,a+n);
	for(int i=0;i<n;i++)
	    cout<<a[i]<<' ';
	return 0;
}

zs哥哥的神奇计算器

#include<bits/stdc++.h>
using namespace std;
int main()
{
	int t,m,n,add;
	cin>>t;
	while(t--)
    {
        cin>>m>>n;
        add=m+n;
        if(add>=1024)
            add-=2048;
        else if(add<=-1024)
            add+=2048;
        cout<<add<<endl;
	}
	return 0;
}

吃饱了睡,睡饱了吃的ccgg

#include <bits/stdc++.h>
using namespace std;
int main()
{
    int n;
    cin>>n;
    while (n--)
    {
        int x1,y1,x2,y2,x3,y3,s;
        cin>>x1>>y1>>x2>>y2>>x3>>y3;
        if(x1==x2&&x1==x3)
            s=abs(y2-y1)+2;
        else if(y1==y2&&y2==y3)
            s=abs(x2-x1)+2;
        else 
            s=abs(x2-x1)+abs(y2-y1);
        cout<<s<<endl;
    }
    return 0;
}

wz哥哥买礼物

#include<bits/stdc++.h>
using namespace std;
int n,m,k;
void slove()
{
	scanf("%d",&n);
    int a1=n/3,a2=n/3;
    n%=3;
    if(n==1)    
        a1++;
    else if(n==2)   
        a2++;
    cout <<a1<<' '<<a2<<endl;
}
int main(){
    int t = 1;

	while(t --)
		slove();
	return 0;
}

bs拯救女神mm

#include<bits/stdc++.h>
using namespace std;
int main()
{
	long long  n,t;//2n平方,4的n次方 
	cin>>n;
	while(n--)
    {
		cin>>t;
		long long cnt1=0,cnt2=0;
		if(t%2==0)
        {
			if(sqrt(t/2.0)==(int)sqrt(t/2.0)||sqrt(t/4.0)==(int)sqrt(t/4.0))
                cout<<"YES"<<endl;
			else 
                cout<<"NO"<<endl;
		}
        else 
            cout<<"NO"<<endl;
	}
	return 0;
}

学渣bs来送签到

#include<iostream>
using namespace std;
int main()
{
	int a,b,c,d;cin>>a>>b>>c>>d;
	double sum=a*0.5+b*0.2+c*0.2+d*0.1;
	if(a<60)
        cout<<"QWQ";
	else if(sum>=60.0) 
        cout<<"YES";
	else 
        cout<<"QWQ";
	return 0;
}

到底谁更穷?

#include <iostream>
using namespace std;
int main()
{
    long long a1,b1,c1,a2,b2,c2;
    cin>>a1>>b1>>c1>>a2>>b2>>c2;
    double n1=(double)b1/c1;
    double n2=(double)b2/c2;
    if(n1>n2)
        cout<<"ccgg";
    else 
        cout<<"bs";
    return 0;
}

街舞社

#include <bits/stdc++.h>
#define x first
#define y second
using namespace std;
typedef long long ll;
typedef pair<int, int> PII;
const int N = 20 + 10;
const ll mod = 998244353;
const double pi = acos(-1);
int n;
ll c[N][N];
ll A[N];
void init()
{
    for (int i = 0; i <= 25; i++)
        for (int j = 0; j <= i; j++)
            if (!j)
                c[i][j] = 1;
            else
                c[i][j] = (c[i - 1][j] + c[i - 1][j - 1]);
    A[1] = 1;
    for (int i = 2; i <= 10; i++)
        A[i] = A[i - 1] * i;
}
void solve()
{
    init();
    cin >> n;
    if (n == 2)
        cout << "1" << endl;
    else if (n == 4)
        cout << "3" << endl;
    else
    {
        ll ans = c[n][n / 2];
        ans *= A[n / 2];
        ans *= A[n / 2];
        ans /= (n / 2);
        ans /= (n / 2);
        ans /= 2;
        cout << ans << endl;
    }
}
int main()
{
    std::ios::sync_with_stdio(false);
    cin.tie(0);
    cout.tie(0);
    int t = 1;
    // cin >> t;
    while (t--)
        solve();
    return 0;
}

升级版排序

#include <iostream>
#include <algorithm>
#include <vector>
using namespace std;
pair<int, int> p[1000100];
bool cmp(pair<int, int> &a, pair<int, int> &b)
{
    if (a.first != b.first)
        return a.first > b.first;
    else
        return a.second < b.second;
}
int main()
{
    int a;
    cin >> a;
    for (int x = 0; x < a; x++)
        cin >>p[x].first >>p[x].second;
    sort(p, p + a, cmp);
    int m;
    while (cin >> m)
        cout << p[m-1].second << endl;
    return 0;
}

犹太棋

#include <iostream>
using namespace std;
int main()
{
    cout<<"YES"<<endl;    
    return 0;
}
posted @ 2022-12-02 17:11  0x3ea  阅读(31)  评论(0编辑  收藏  举报