0
点赞
收藏
分享

微信扫一扫

计算机毕业设计 基于Python的校园个人闲置物品换购平台 闲置物品交易平台 Python+Django+Vue 前后端分离 附源码 讲解 文档

b91bff6ffdb5 2024-09-22 阅读 20
算法

时光如流水般逝去,我已在校园中奋战大二!(≧▽≦) 今天,静静回顾去年的新生赛,心中涌起无尽感慨,仿佛那段青春岁月如烟花般绚烂。✧。(≧▽≦)。

青春就像一场燃烧的盛宴,激情澎湃,犹如晨曦中第一缕光辉!(☆ω☆) 它是追梦的勇气,无畏的挑战,数不清的夜晚为理想拼搏的坚定信念。让我们在这段时光中,挥洒热血,尽情追逐,书写属于自己的奇迹!(*≧ω≦)

好吧,我编不下去了,所以给这段青春打上@Deprecated注解!(。•́︿•̀。)

接下来,让我们一起回顾去年的新生赛吧!

如有大佬轻点喷,我只是个Codeforces 800分的蒟蒻,正在努力追寻更高的编程境界!(๑•̀ㅂ•́)و✧

目录

A题

B题

J题

P题

L题

M题

F题

D题

G题

A题

输入输出描述

感觉是键盘输入5个数字

然后带到事先准备好的函数式子里面去得到结果输出

#include<stdio.h>
int main(){
    int t,a,b,c,d,e;
   
    scanf("%d",&t);
    
    while(t--){
        scanf("%d%d%d%d%d",&a,&b,&c,&d,&e); 
    	printf("%d\n",((a+b)*c+d)*e);
    }
    
    return 0;
}

B题

输出hello

#include<stdio.h>
int main(){
    printf("hello");
    return 0;
}

J题

题目很逆天

输入输出描述

这题有坑 因为abc已经到了1e9 所以乘积1e18后数据会爆long 得开long long的数据类型

更大更大的数(bushi)

当时因为这个坐牢了好久

求导

y=ax^2+bx+c导数为y"=2ax+b

把x代入

#include<stdio.h>
int main(){
    int z;
    long long X;
    long long A,B,C;
    scanf("%d",&z);
    
    while(z--){
        scanf("%ld%ld%ld%ld",&A,&B,&C,&X);
        printf("%ld\n",2*A*X+B);
    }
    
    return 0;
}

P题

输入输出描述

思维 打表

可不要被题面吓唬住

多花几个图不难发现

找一下规律 圆圈都是隔着排律的

如果总格子是偶数 就占一半

如果总格子数奇数 就占一半(?) 抹掉小数

但是还有特判

如果只有一个座位 那只需要买一张票 而不是/2

#include<stdio.h>
int main(){
    long long  n,m,a;
    int z;
    scanf("%d",&z);
    
    while(z--){ 
        scanf("%ld%ld%ld",&n,&m,&a);
        
        //特判
        if(n==1&&m==1){
            printf("%ld\n",a);
        }
        else{
            printf("%ld\n",n*m/2*a);  
        }
       
        
    }
    return 0;
}

L题

输入输出描述

其实可以在纸上画出来

我试了一下

直接交了

#include <stdio.h>
int main(){
	printf("2192489272");
    return 0;
}                                              

但是也可以用数组模拟过程

&a[i+1] 用于检查 a[i+1] 是否存在且不为零。具体来说,它确保在访问 a[i+1] 时不会越界。如果 i 是 10,a[i+1] 就会访问 a[11],这会导致未定义行为。通过这个条件,可以避免这种情况。不过在改进后的代码中,我们已经确保了不会越界,所以这个条件就不再必要了。

#include<stdio.h>

int main()
{
	char a[] = "1228924297";
	int i,k;
	for(i=0; i<=10; i++)
	{
        // 如果当前位是偶数位
		if(i%2==1&&a[i+1])
		{
            // 交换位置
			k = a[i];
			a[i] = a[i+1];
			a[i+1] = k;
		}
	}
	for(i=0; i<=10; i++)
	{
        // 如果当前位是奇数位
		if(i%2==0&&a[i+1])
		{
            // 交换位置
			k = a[i];
			a[i] = a[i+1];
			a[i+1] = k;
		}
	}
    
    // 输出
	printf("%s",a);
}

M题

![img](../images/F3CCDD27D2000E3F9255A7E3E2C48800.jpeg)

输入输出描述

其实我们可以把每一种情况都枚举出来

其实就16种

#include <stdio.h>
int t;
int a,b,c,d;
int main()
{
    scanf("%d",&t);
    for(int i = 0;i<t;i++)
    {
        scanf("%d%d%d%d",&a,&b,&c,&d);
        if(a==0&&b==1&&c==0&&d==2)//
            printf("2\n");
        if(a==0&&b==1&&c==9&&d==2)///
            printf("5\n");
        if(a==0&&b==1&&c==0&&d==6)
            printf("3\n");
        if(a==0&&b==1&&c==9&&d==6)
            printf("5\n");

        if(a==9&&b==1&&c==0&&d==2)
            printf("5\n");
        if(a==9&&b==1&&c==9&&d==2)//
            printf("2\n");
        if(a==9&&b==1&&c==0&&d==6)
            printf("5\n");
        if(a==9&&b==1&&c==9&&d==6)
            printf("3\n");

        if(a==0&&b==7&&c==0&&d==2)
            printf("3\n");
        if(a==0&&b==7&&c==9&&d==2)
            printf("5\n");
        if(a==0&&b==7&&c==0&&d==6)//
            printf("2\n");
        if(a==0&&b==7&&c==9&&d==6)/
            printf("5\n");

        if(a==9&&b==7&&c==0&&d==2)
            printf("5\n");
        if(a==9&&b==7&&c==9&&d==2)
            printf("3\n");
        if(a==9&&b==7&&c==0&&d==6)//
            printf("5\n");
        if(a==9&&b==7&&c==9&&d==6)///
            printf("2\n");
    }
}

F题

输入输出描述

 

我一般称呼这种题目为左右晃...

// 注意类名必须为 Main, 不要有任何 package xxx 信息
package Dduo;
import java.util.*;
import java.math.*;

// 北华大学 
// 大数据应用与开发工作室 
// 朱道阳
// Eclipse IDE 2020 08
// OpenJDK 1.8
// 支持Java8的最新特性,比如stream操作和lambda表达式
// 点击下方网页可访问个人主页
// http://gczdy.cn

public class Main {

    static Scanner sc = new Scanner(System.in);
    static long MOD = (long) (1e9 + 7);
    
    // 注意数据类型
    static int[] arr;
    
    public static void main(String[] args) {

        int t = 1;
//        t = sc.nextInt();
        
        while (t-- > 0) {
            solve();
        }
        
        return;
    }

    
	static void solve() {
	
		 long n= sc.nextLong();
		 long ans=0;
		 
	     long min=Long.MAX_VALUE;
	     long max=Long.MIN_VALUE;
	 
	     for (int i = 0; i < n; i++) {
	            ans+= sc.nextLong();
	            min= min<ans?min:ans;
	            max= max>ans?max:ans;
	     }
	         
	     //注意初始分数
	     min= min<0?min:0;
	     max= max>0?max:0;
	         
	     System.out.println(max+" "+min);
	 
      
	}
	
	
}

// 如果你讨厌我 那我就永远消失
// 被爱的人不用道歉
// 下次再见面 不要冷冰冰 也不要说反话!

D题

输入输出描述

// 注意类名必须为 Main, 不要有任何 package xxx 信息
package Dduo;
import java.util.*;
import java.math.*;

// 北华大学 
// 大数据应用与开发工作室 
// 朱道阳
// Eclipse IDE 2020 08
// OpenJDK 1.8
// 支持Java8的最新特性,比如stream操作和lambda表达式
// 点击下方网页可访问个人主页
// http://gczdy.cn

public class Main {

    static Scanner sc = new Scanner(System.in);
    static long MOD = (long) (1e9 + 7);
    
    // 注意数据类型
    static int[] arr;
    
    public static void main(String[] args) {

        int t = 1;
//        t = sc.nextInt();
        
        while (t-- > 0) {
            solve();
        }
        
        return;
    }

    
    static void solve() {
        int n = sc.nextInt(); 
        int q = sc.nextInt();
        String str = sc.next(); 
        
        for (int i = 0; i < q; i++) {
            int x = sc.nextInt(); 
            
            // 得到a b
            int a = Math.min(x, n + 1 - x);
            int b = Math.max(x, n + 1 - x);
            
            // 截取字符串 再进行拼接
            StringBuilder sb = new StringBuilder(str.substring(a - 1, b));
            
            //翻转字符串
            sb.reverse();
            
            str = str.substring(0, a - 1) + sb.toString() + str.substring(b);
        }
        
        System.out.print(str);
    }
	
}

// 如果你讨厌我 那我就永远消失
// 被爱的人不用道歉
// 下次再见面 不要冷冰冰 也不要说反话!

G题

输入输出描述

我感觉可以打表写

把每一种情况都枚举一遍 写了30min

// 注意类名必须为 Main, 不要有任何 package xxx 信息
// package Dduo;
import java.util.*;
import java.math.*;

// 北华大学 
// 大数据应用与开发工作室 
// 朱道阳
// Eclipse IDE 2020 08
// OpenJDK 1.8
// 支持Java8的最新特性,比如stream操作和lambda表达式
// 点击下方网页可访问个人主页
// http://gczdy.cn

public class Main {

    static Scanner sc = new Scanner(System.in);
    static long MOD = (long) (1e9 + 7);
    
    // 注意数据类型
    static int[] arr;
    
    public static void main(String[] args) {

        int t = 1;
       t = sc.nextInt();
        
        while (t-- > 0) {
            solve();
        }
        
        return;
    }

    
    static void solve() {
    	
    	  long n = sc.nextLong();
          long m = sc.nextLong();
          long x = sc.nextLong();
          long y = sc.nextLong();
          long a = sc.nextLong();
          long b = sc.nextLong();
          
          if (n == 0) {
              System.out.println("YES");
              return;
          }
          
          if (a == 0 && m > 0) {
              System.out.println("YES");
              return;
          }
          
          if (b == 0) {
              if (n > m) {
                  System.out.println("NO");
              } else {
                  System.out.println("YES");
              }
              return;
          }
          
          long tmp = a / b + 1;
          if (m >= tmp) {
              System.out.println("YES");
              return;
          }
          
          if (m >= n) {
              System.out.println("YES");
          } else {
              System.out.println("NO");
          }
    }
	
}

// 如果你讨厌我 那我就永远消失
// 被爱的人不用道歉
// 下次再见面 不要冷冰冰 也不要说反话!

re了 尽力了

总结

加油吧

累瘫了

晚上又测验又验题的

能不能把我改造成微服务

举报

相关推荐

0 条评论