AtCoder 提交记录跳转

AtCoder 跳转至提交记录

  1. // ==UserScript==
  2. // @name AtCoder 提交记录跳转
  3. // @namespace http://tampermonkey.net/
  4. // @version 2024.2.26
  5. // @description AtCoder 跳转至提交记录
  6. // @author AbsMatt
  7. // @match https://www.luogu.com.cn/problem/*
  8. // @grant none
  9. // @license MIT
  10. // ==/UserScript==
  11.  
  12. function solve(){
  13. let winnam = window.location.href;
  14. let atnam = "";
  15. let flag = false;
  16. let at=false;
  17. let pos = document.querySelector("#app > div.main-container > div.wrapper.wrapped.lfe-body.header-layout.normal > div.header > div.functional > div.operation");
  18. let butt = document.createElement('button');
  19. butt.innerText = 'AtCoder 提交记录';
  20. butt.id = 'free';
  21. butt.className = 'btn btn-primary';
  22. butt.style.backgroundColor = '#3498DB';
  23. butt.style.borderColor = '#3498DB';
  24. butt.style.color = 'white';
  25. butt.style.width = '10em';
  26. butt.style.height = '2.3em';
  27. for (let i = 0; i < winnam.length; i++) {
  28. if (flag && winnam[i] !== '_') atnam += winnam[i];
  29. if (winnam[i] === '_'){
  30. at=true;
  31. if (flag === false) {
  32. flag = true;
  33. } else {
  34. flag = false;
  35. }
  36. }
  37. }
  38. if(at){
  39. pos.appendChild(butt);
  40. butt.addEventListener('click', function() {
  41. window.open("https://atcoder.jp/contests/" + atnam + "/submissions/me");
  42. });
  43. }
  44. }
  45.  
  46. (function() {
  47. 'use strict';
  48. solve();
  49. })();