competitive-programming-java-library

This documentation is automatically generated by online-judge-tools/verification-helper

View the Project on GitHub shun0923/competitive-programming-java-library

:heavy_check_mark: library/TemplateDynamicSwag.java

Depends on

Verified with

Code

package library;

import java.util.*;
import java.util.function.*;
import library.FastIO;

class TemplateDynamicSwag<T> {
	Supplier<T> eSupplier;
	BinaryOperator<T> f;

	Deque<T> frontVal = new ArrayDeque<>();
	T front;
	Deque<T> back = new ArrayDeque<>();

	// O(1)
	TemplateDynamicSwag(Supplier<T> eSupplier, BinaryOperator<T> f) {
		this.eSupplier = eSupplier;
		this.f = f;
		front = eSupplier.get();
	}

	// O(1)
	T fold() { return back.isEmpty() ? front : f.apply(back.getLast(), front); }
	// O(1)
	void push(T x) {
		frontVal.addLast(x);
		front = f.apply(front, x);
	}
	// O(1) amortized
	void pop() {
		if(back.isEmpty()) {
			T tmp = eSupplier.get();
			while(!frontVal.isEmpty()) {
				tmp = f.apply(frontVal.removeLast(), tmp);
				back.addLast(tmp);
			}
			front = eSupplier.get();
		}
		back.removeLast();
	}
}
Traceback (most recent call last):
  File "/opt/hostedtoolcache/Python/3.11.2/x64/lib/python3.11/site-packages/onlinejudge_verify/documentation/build.py", line 71, in _render_source_code_stat
    bundled_code = language.bundle(stat.path, basedir=basedir, options={'include_paths': [basedir]}).decode()
                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/opt/hostedtoolcache/Python/3.11.2/x64/lib/python3.11/site-packages/onlinejudge_verify/languages/user_defined.py", line 71, in bundle
    return subprocess.check_output(shlex.split(command))
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/opt/hostedtoolcache/Python/3.11.2/x64/lib/python3.11/subprocess.py", line 466, in check_output
    return run(*popenargs, stdout=PIPE, timeout=timeout, check=True,
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/opt/hostedtoolcache/Python/3.11.2/x64/lib/python3.11/subprocess.py", line 571, in run
    raise CalledProcessError(retcode, process.args,
subprocess.CalledProcessError: Command '['false']' returned non-zero exit status 1.
Back to top page