- 取石子
F0001P659 颜色HEX代码增量更新gzjun
- 2025-7-15 14:45:23 @
#include<bits/stdc++.h>
using namespace std;
long long rzs(string s,int r){
long long sum=0,quan=1;
for(int i=s.size()-1;i>=0;i--){
if(isdigit(s[i])){
sum+=(s[i]-48)*quan;
}else{
sum+=(s[i]-55)*quan;
}
quan*=r;
}
return sum;
}
string szr(long long n,int r){
string s;
if(n==0) s="0";
while(n){
if(n%r>9){
s.push_back(n%r+55);
}else{
s.push_back(n%r+48);
}
n/=r;
}
reverse(s.begin(),s.end());
return s;
}
int main(){
string s;
int a,b,c;
cin>>s>>a>>b>>c;
long long red2,green2,blue2;
string red,blue,green;
red=s.substr(1,2);
green=s.substr(3,2);
blue=s.substr(5,2);
red2=rzs(red,16);
green2=rzs(green,16);
blue2=rzs(blue,16);
if(red2+a>255){
red2=255;
}else{
red2+=a;
}
if(green2+b>255){
green2=255;
}else{
green2+=b;
}
if(blue2+c>255){
blue2=255;
}else{
blue2+=c;
}
red=szr(red2,16);
green=szr(green2,16);
blue=szr(blue2,16);
cout<<"#";
if(red.size()<2){
red="0"+red;
}
if(green.size()<2){
green="0"+green;
}
if(blue.size()<2){
blue="0"+blue;
}
cout<<red<<green<<blue;
return 0;
}
3 条评论
-
曹莫凡 @ 2025-7-15 15:19:33
牛逼,这么长都能写出来
-
2025-7-15 15:10:46@
我嘞个骚刚
-
2025-7-15 15:10:31@
@高梓均 这么长吗??
- 1
信息
- ID
- 116
- 时间
- 1000ms
- 内存
- 256MiB
- 难度
- 8
- 标签
- 递交数
- 56
- 已通过
- 9
- 上传者