Ghép Hình
Submit solution
Points:
1 (partial)
Time limit:
1.0s
Memory limit:
98M
Author:
Problem types
Allowed languages
Ada, Assembly, Awk, C, C++, C11, CLANG, CLANGX, Classical, COBOL, Coffee, CSC, D lang, DART, F95, FORTH, Fortrn, GAS32, GO, Haskell, Itercal, Java, kotlin, LEAN, LISP, LUA, MONOVB, Nasm, OCAML, Pascal, Perl, php, PIKE, prolog, Pypy, Python, Ruby 2, RUST, Scala, SCM, SED, SWIFT, TCL, TUR, V8JS, VB, ZIG
Chúng ta thấy rằng một hình vuông nếu cắt ngang hoặc cắt dọc sẽ sinh ra 2 hình chữ nhật. Bài toán ngược lại cho 2 hai hình chữ nhật có độ dài cạnh là a,b và c, d hỏi có thể ghép thành 1 hình vuông không?
Input:
o Dòng 1 hai số nguyên dương a,b (1<=a,b<=10^5)
o Dòng 2 hai số nguyên dương c,d (1<=c,d<=10^5)
Output:
Xuất ra YES hoặc NO là kết quả có thể ghép được hay không?
Ví dụ:
Input:
3 5
5 2
Output:
YES
Comments
include<iostream>
using namespace std; int main() { long x,y,a,b;cin>>x>>y>>a>>b; long max1=x>y?x:y; long max2=a>b?a:b; if((x+a==y||x+b==y||y+a==x||y+b==x)&&max1==max2) cout<<"YES"; else cout<<"NO"; return 0; }
Anh em chú ý up code thì đặt code trong nháy ``` nhé
include<stdio.h>
include<math.h>
// fb: cuongngoctran int main() { int a,b,c,d,m1,n2,o1,p2; scanf("%d%d%d%d",&a,&b,&c,&d); m1=a; if(a<b) m1=b; o1=a; if(a>b) o1=b; n2=c; if(c<d) n2=d; p2=c; if(c>d) p2=d; if(m1==n2) {if(o1+p2==m1) printf("YES"); else printf("NO"); } else printf("NO"); }
include<stdio.h>
int main() { int a,b,c,d,max1,max2,min1,min2; scanf("%d%d",&a,&b); scanf("%d%d",&c,&d); Max1=a; if(Max1<b) Max1=b; Min1=a; if(Min1>b) Min1=b; Max2=c; if(max2<d) max2=d; Min2=c; if(Min2>d) Min2=d; if(Max1==max2) { if(Min1+Min2==Max1) printf("YES"); else printf("NO"); } else printf("NO"); return 0; }
include<stdio.h>
include<math.h>
int main() { int a,b,c,d,max1,max2,min1,min2; scanf("%d%d",&a,&b); scanf("%d%d",&c,&d); max1=a;if(max1<b) max1=b; min1=a;if(min1>b) min1=b; max2=c;if(max2<d) max2=d; min2=c;if(min2>d) min2=d; if(max1==max2) {if(min1+min2==max1) printf("YES"); else printf("NO"); } else printf("NO"); }
include<stdio.h>
include<math.h>
int main() { int a,b,c,d,max1,max2,min1,min2; scanf("%d%d",&a,&b); scanf("%d%d",&c,&d); max1=a;if(max1<b) max1=b; min1=a;if(min1>b) min1=b; max2=c;if(max2<d) max2=d; min2=c;if(min2>d) min2=d; if(max1==max2) {if(min1+min2==max1) printf("YES"); else printf("NO"); } else printf("NO"); }