首页 > 编程语言 >Java面向对象3(K~O)

Java面向对象3(K~O)

时间:2023-02-14 13:01:42浏览次数:46  
标签:Java String int System 面向对象 sc new Scanner

 K     正方形(SDUT 2444)

import java.lang.reflect.Array;
import java.util.*;

public class Main {

	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		int t = sc.nextInt();
		node s[] = new node[2000];
		// System.out.println(55);
		for (int k = 0; k < t; k++) {

			for (int i = 0; i < 4; i++) {
				s[i] = new node();
				s[i].x = sc.nextInt();
				s[i].y = sc.nextInt();
				// System.out.println(s[i].x + " " + s[i].y);
			}
			s[4] = new node();
			s[4].x = s[0].x;
			s[4].y = s[0].y;
			Sum p = new Sum(s);
			if (p.getAns() == 1) {
				System.out.print("YES\n");
			} else
				System.out.print("NO\n");
		}
		sc.close();
	}
}

class node {
	int x;
	int y;
}

class Sum {
	node s[] = new node[200];

	Sum(node s[]) {
		this.s = s;
	}

	int f1() {
		int f = 1;
		for (int i = 0; i < 3; i++) {
			int x = s[i].x - s[i + 1].x;
			int y = s[i].y - s[i + 1].y;
			int z = s[i + 1].x - s[i + 2].x;
			int w = s[i + 1].y - s[i + 2].y;
			if (x * x + y * y != z * z + w * w) {
				f = 0;
				break;
			}
		}
		return f;
	}

	int f2() {
		int f = 1;
		for (int i = 0; i < 3; i++) {
			int x = (s[i + 1].x - s[i].x) * (s[i + 2].x - s[i + 1].x);
			int y = (s[i + 1].y - s[i].y) * (s[i + 2].y - s[i + 1].y);
			if (x != -y) {
				f = 0;
				break;
			}
		}
		return f;
	}

	int getAns() {
		int flag1 = f1();
		int flag2 = f2();
		if (flag1 == 1 && flag2 == 1)
			return 1;
		else
			return 0;
	}
}

相似三角形(SDUT 2562)

import java.util.Arrays;
import java.util.Scanner;

public class Main {

	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		int a[] = new int[10];
		while (sc.hasNext()) {
			for (int i = 0; i < 6; i++) {
				a[i] = sc.nextInt();
			}
			Node p = new Node(a);
			int ans = p.getAns();
			if (ans == 1)
				System.out.println("YES");
			else
				System.out.println("NO");
		}
	}
}

class Node {
	int a[] = new int[10];

	Node(int a[]) {
		this.a = a;
	}

	int getOk() {
		int f1 = 0;
		int f2 = 0;
		if (a[0] + a[1] > a[2] && a[0] + a[2] > a[1] && a[1] + a[2] > a[0])
			f1 = 1;
		if (a[3] + a[4] > a[5] && a[3] + a[5] > a[4] && a[4] + a[5] > a[3])
			f2 = 1;
		if (f1 == 1 && f2 == 1)
			return 1;
		else
			return 0;
	}

	int getAns() {
		if (getOk() == 1) {
			int f = 0;
			Arrays.sort(a, 0, 3);
			Arrays.sort(a, 3, 6);
			if ((a[0] * a[4] == a[1] * a[3]) && (a[0] * a[5] == a[2] * a[3]) && (a[1] * a[5] == a[2] * a[4]))
				f = 1;
			return f;
		} else
			return 0;
	}
}

N     手机键盘 (SDUT 2618)

import java.util.Arrays;
import java.util.Scanner;

public class Main {

	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		String s[] = new String[10];
		s[2] = "abc0";s[3] = "def0";s[4] = "ghi0"; s[5] = "jkl0";
		s[6] = "mno0"; s[7] = "pqrs"; s[8] ="tuv0";s[9] = "wxyz";
		String str;
		while (sc.hasNext()) {
			str = sc.nextLine();
			Node p;
			p = new Node(s,str);
			int ans = p.getAns();
			System.out.println(ans);
		}

}
}

class Node {
	String str;
	String s[] = new String[10];
	Node(String s[], String str) {
		this.str = str;
		this.s = s;
	}
	int getAns()
	{
		int ans = 0,f = 0;
		int flag = 0;
		int i,j,k;
		int len = str.length();
		for( i = 0; i < len; i ++)
		{
			flag = 0;
			for( j = 2; j <= 9; j ++)
			{
				for( k = 0; k < 4; k ++)
				{
					if(i == 0)
					{
						if(s[j].charAt(k) == str.charAt(i)) {
							ans += k + 1;
							f = j;
							flag = 1;
							break;
						}
					}
					else {
						if(s[j].charAt(k) == str.charAt(i))
						{
							if(f == j)ans += k + 3;
							else {ans += k + 1;f = j;}
							flag = 1;
							break;
						}
					}
				}
				if(flag == 1) break;
			}
		}
		return ans;
	}
}

2-2 Time类的定义 (SDUT 2669)

import java.util.Arrays;
import java.util.Scanner;

public class Main {

	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		int H,M,S;
		H = sc.nextInt();
		M = sc.nextInt();
		S = sc.nextInt();
		Time t = new Time(H,M,S);
		t.prit();
	}
}

class Time
{
	int h,m,s;
	Time(int H, int M, int S)
	{
		h = H;
		m = M;
		s = S;
	}
	void setH()
	{
		if(h > 12 || h < 0) h = 12;
	}
	void setM()
	{
		if(m > 60 || m < 0) m = 0;
	}
	void setS()
	{
		if(s > 60 || s < 0) s = 0;
	}
	void prit()
	{
		setH();setM();setS();
		System.out.printf("%02d:%02d:%02d\n", h,m,s);
	}
}

 

标签:Java,String,int,System,面向对象,sc,new,Scanner
From: https://blog.51cto.com/u_15965659/6056634

相关文章

  • JAVA-studyDay02
    java-day02一.注释//书写注释是非常好的习惯//单行注释////多行注释/**///JavaDoc:文档注释/***///平时写代码一定要注意规范注意:注释不会影响代码二.运算符1.......
  • rxjava之复习
    1.rxjava之操作符1).转换类操作符(mapflatMapconcatMapflatMapIterableswitchMapscangroupBy...);map及flatMap以及concatMap区别?map和flatMap都可以对RxJava传入......
  • java根据地址获取百度API经纬度
    java根据地址获取百度API经纬度(详细文档)1publicvoidgetLarLng(Stringaddress)throwsException{23Stringak="vZ5wAkH9uc6mCnrhtYWey2fBHBmU9Rh......
  • Java 通过get post 请求url
    .已获取小程序的access_token为例,通过Get请求url1importcom.alibaba.fastjson.JSONObject;23StringwechatUrl="https://api.weixin.qq.com/cgi-bin/tok......
  • java删除字符串最后一位
    Strings="1,2,3,4,5,6,7,8,";//目标:删除最后一个","s=s.substring(0,s.length()-1);System.out.println(s); ......
  • eclipse 为javaWeb项目更改jdk版本的正确姿势
    1.情景展示在使用eclipse进行web项目开发时,针对公司以前的老项目,从SVN下载下来后,我们往往会需要更换jdk版本,使其与本地jdk版本保持一致。如何切换jdk版本?2.具体实现第一步:切......
  • 从混沌到规范:JavaScript模块化方案的演进史
    前言JavaScript语言诞生至今,模块规范化之路曲曲折折。社区先后出现了各种解决方案,包括AMD、CMD、CommonJS等,而后ECMA组织在JavaScript语言标准层面,增加了模块功能(因......
  • JavaScript-面向对象的理解
    Everythingisobject(万物皆对象)作为开发大家都非常熟悉的一句话。(1)对象是单个事物的抽象。在生活中大的事物圈子,比如一只猫、一本书、一个人,都可以理解为对象(objec......
  • java反射
    一、反射的概述Java反射机制是指在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法;对于任意一个对象,都能够调用它的任意一个方法和属性;这种动态获取的信息以......
  • java递归 处理权限管理菜单树或分类
    1.数据库表设计2.实体类设计1packagecom.ieou.capsule.dto.SystemPermissions;23importjava.util.List;45/**6*功能菜单类7*/8publiccl......