NC54841. 3的倍数
描述
输入描述
第一行是一个整数T,表示有T组数据。接下来有T行,每行两个整数L, R(L<= R)。
1<=T<= 10, L <= R <= 10^18 。
输出描述
每组数据对应只有1行输出,如果x是3的倍数,则输出"YES",否则输出"NO"。
示例1
输入:
3 2 4 2 2 3 5
输出:
YES NO YES
C++(clang++ 11.0.1) 解法, 执行用时: 29ms, 内存消耗: 456K, 提交时间: 2022-11-26 10:57:27
#include<iostream> using namespace std; int main(){ long long T,L,R; cin>>T; while(T--){ cin>>L>>R; if((L+R)%3==0||(R-L+1)%3==0) cout<<"YES"<<endl; else cout<<"NO"<<endl; } return 0; }
pypy3 解法, 执行用时: 210ms, 内存消耗: 26072K, 提交时间: 2023-04-30 20:52:17
for i in range(int(input())): a,b=map(int,input().split()) res=(a+b)*(b-a+1)//2 if res%3==0: print("YES") else: print("NO")
Ruby 解法, 执行用时: 102ms, 内存消耗: 9148K, 提交时间: 2021-11-08 17:34:51
t=gets.to_i for i in 1..t l,r=gets.split().map(&:to_i) if (r+l)*(r-l+1)%3==0 puts 'YES' else puts 'NO' end end
Python3 解法, 执行用时: 104ms, 内存消耗: 4588K, 提交时间: 2023-07-14 23:01:06
t = int(input()) for i in range(t): l,r = map(int,input().split()) print("YES" if (l+r)%3==0 or (r-l+1)%3==0 else "NO")